-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path18-dbcdfdf839f680eefc31.js.map
1 lines (1 loc) · 125 KB
/
18-dbcdfdf839f680eefc31.js.map
1
{"version":3,"sources":["webpack:///./node_modules/@deckdeckgo/highlight-code/dist/esm-es5/deckdeckgo-highlight-code-carbon-theme-024790ad.js","webpack:///./node_modules/@deckdeckgo/highlight-code/dist/esm-es5/deckgo-highlight-code.entry.js","webpack:///./node_modules/gatsby/node_modules/core-js/modules/es6.string.anchor.js","webpack:///./node_modules/gatsby/node_modules/core-js/modules/_string-html.js"],"names":["DeckdeckgoHighlightCodeTerminal","DeckdeckgoHighlightCodeCarbonTheme","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","Symbol","iterator","this","n","v","op","TypeError","call","pop","length","push","commonjsGlobal","globalThis","window","global","self","prism","fn","module","exports","createCommonjsModule","Prism","_self","lang","uniqueId","manual","disableWorkerMessageHandler","util","encode","tokens","Token","type","content","alias","Array","isArray","map","replace","o","Object","prototype","toString","slice","objId","obj","defineProperty","clone","deepClone","visited","id","key","hasOwnProperty","forEach","i","getLanguage","element","test","className","parentElement","match","toLowerCase","currentScript","document","Error","err","src","exec","stack","scripts","getElementsByTagName","languages","extend","redef","insertBefore","inside","before","insert","root","grammar","ret","token","newToken","old","DFS","callback","property","propertyType","plugins","highlightAll","async","highlightAllUnder","container","env","selector","hooks","run","elements","querySelectorAll","highlightElement","language","parent","parentNode","nodeName","code","textContent","insertHighlightedCode","highlightedCode","innerHTML","Worker","worker","filename","onmessage","evt","data","postMessage","JSON","stringify","immediateClose","highlight","text","tokenize","rest","tokenList","LinkedList","addAfter","head","matchGrammar","startNode","startPos","oneshot","target","patterns","j","pattern","lookbehind","greedy","lookbehindLength","flags","RegExp","source","currentNode","pos","tail","str","removeCount","prev","lastIndex","from","index","to","p","k","after","removeFrom","removeRange","wrapped","list","array","node","toArray","all","add","name","callbacks","matchedStr","newNode","count","s","tag","classes","attributes","aliases","join","addEventListener","message","parse","close","script","highlightAutomaticallyCallback","hasAttribute","readyState","defer","requestAnimationFrame","setTimeout","WorkerGlobalScope","markup","tagName","includedCdataInside","def","xml","html","mathml","svg","string","css","addInlined","clike","javascript","js","querySelector","fileHighlight","Extensions","pre","getAttribute","extension","createElement","appendChild","xhr","XMLHttpRequest","open","onreadystatechange","status","responseText","setAttribute","statusText","send","loadTheme","theme","undefined","BLACKBOARD","COBALT","DUOTONE","HOPSCOTCH","LUCARIO","MATERIAL","MONOKAI","NORD","PANDA","PARAISO","SETI","SYNTHWAVE","TWILIGHT","VERMINAL","VSCODE","YETI","ZENBURN","CarbonThemeStyle","_a","style","DeckdeckgoHighlightCode","class_1","hostRef","_this","anchor","anchorZoom","hideAnchor","lineNumbers","terminal","CARBON","editable","DRACULA","editing","anchorOffsetTop","fetchOrParseAfterUpdate","catchNewLine","$event","selection","charCode","preventDefault","getSelection","focusNode","focusOffset","charCodeAt","execCommand","applyCode","stopEditing","parseSlottedCode","prismLanguageLoaded","codeDidChange","componentWillLoad","loadGoogleFonts","componentDidLoad","languageWasLoaded","languageDidLoad","loadLanguage","fetchOrParse","componentDidUpdate","themeStyle","languageLoaded","detail","fetchCode","onload","emit","onerror","removeChild","onLineNumbersChange","onCarbonChange","UBUNTU","getElementById","link","load","el","parseCode","innerText","trim","fetchedCode","fetch","shadowRoot","children","regEx","err_1","split","m","idx","attachHighlightObserver","div","classList","addAnchors","observer_1","ResizeObserver","_entries","addHighlight","disconnect","observe","anchors","filter","hasLineAnchor","line","indexOf","rows_1","containerCode","rowIndex_1","lastOffsetTop_1","offsetHeight_1","highlightLines","findRowsToHighlight","hasChildNodes","childNodes","editElement","span","previousElementSibling","insertAdjacentElement","prepend","offsetTop","offsetHeight","rowsIndexToCompare","results","rows","row","start","parseInt","end","findNextAnchor","enter","elementsArray","elementCode","reverse","find","hasLineZoom","firstElementChild","zoomCode","zoom","setProperty","edit","slottedCode","once","focus","selectedSelection","createRange","removeAttribute","render","hostClass","renderCarbon","renderUbuntu","onMouseDown","onTouchStart","renderCarbonCircle","color","renderUbuntuCircle","mode","symbol","get","enumerable","configurable","createHTML","$export","fails","defined","quot","attribute","S","String","p1","NAME","O","F"],"mappings":"8FAAA,IAAIA,EAQAC,EARJ,oEAEA,SAAWD,GACTA,EAAwC,OAAI,SAC5CA,EAAwC,OAAI,SAC5CA,EAAsC,KAAI,OAH5C,CAIGA,IAAoCA,EAAkC,KAIzE,SAAWC,GACTA,EAAmC,cAAgB,aACnDA,EAAmC,aAAe,YAClDA,EAA+C,WAAI,aACnDA,EAAmC,eAAiB,cACpDA,EAAmC,gBAAkB,eACrDA,EAA2C,OAAI,SAC/CA,EAA4C,QAAI,UAChDA,EAA4C,QAAI,UAChDA,EAA8C,UAAI,YAClDA,EAA4C,QAAI,UAChDA,EAA6C,SAAI,WACjDA,EAA4C,QAAI,UAChDA,EAAmC,aAAe,YAClDA,EAAyC,KAAI,OAC7CA,EAAmC,gBAAkB,eACrDA,EAAmC,aAAe,YAClDA,EAAmC,YAAc,WACjDA,EAA0C,MAAI,QAC9CA,EAA4C,QAAI,UAChDA,EAAyC,KAAI,OAC7CA,EAAmC,oBAAsB,mBACzDA,EAAmC,kBAAoB,iBACvDA,EAAmC,mBAAqB,kBACxDA,EAA8C,UAAI,YAClDA,EAA6C,SAAI,WACjDA,EAA6C,SAAI,WACjDA,EAA2C,OAAI,SAC/CA,EAAyC,KAAI,OAC7CA,EAA4C,QAAI,UA7BlD,CA8BGA,IAAuCA,EAAqC,M,kCCxC/E,uTAsBIC,EAAsC,SAAUC,EAASC,EAAYC,EAAGC,GAO1E,OAAO,IAAKD,IAAMA,EAAIE,WAAU,SAAUC,EAASC,GACjD,SAASC,EAAUC,GACjB,IACEC,EAAKN,EAAUO,KAAKF,IACpB,MAAOG,GACPL,EAAOK,IAIX,SAASC,EAASJ,GAChB,IACEC,EAAKN,EAAiB,MAAEK,IACxB,MAAOG,GACPL,EAAOK,IAIX,SAASF,EAAKI,GAvBhB,IAAeL,EAwBXK,EAAOC,KAAOT,EAAQQ,EAAOL,QAxBlBA,EAwBiCK,EAAOL,MAvB9CA,aAAiBN,EAAIM,EAAQ,IAAIN,GAAE,SAAUG,GAClDA,EAAQG,OAsBkDO,KAAKR,EAAWK,GAG5EH,GAAMN,EAAYA,EAAUa,MAAMhB,EAASC,GAAc,KAAKS,YAI9DO,EAA0C,SAAUjB,EAASkB,GAC/D,IASIC,EACAC,EACAC,EACAC,EAZAC,EAAI,CACNC,MAAO,EACPC,KAAM,WACJ,GAAW,EAAPJ,EAAE,GAAQ,MAAMA,EAAE,GACtB,OAAOA,EAAE,IAEXK,KAAM,GACNC,IAAK,IAMP,OAAOL,EAAI,CACTZ,KAAMkB,EAAK,GACX,MAASA,EAAK,GACd,OAAUA,EAAK,IACI,mBAAXC,SAA0BP,EAAEO,OAAOC,UAAY,WACvD,OAAOC,OACLT,EAEJ,SAASM,EAAKI,GACZ,OAAO,SAAUC,GACf,OAIJ,SAAcC,GACZ,GAAIf,EAAG,MAAM,IAAIgB,UAAU,mCAE3B,KAAOZ,GACL,IACE,GAAIJ,EAAI,EAAGC,IAAMC,EAAY,EAARa,EAAG,GAASd,EAAU,OAAIc,EAAG,GAAKd,EAAS,SAAOC,EAAID,EAAU,SAAMC,EAAEe,KAAKhB,GAAI,GAAKA,EAAEV,SAAWW,EAAIA,EAAEe,KAAKhB,EAAGc,EAAG,KAAKpB,KAAM,OAAOO,EAG3J,OAFID,EAAI,EAAGC,IAAGa,EAAK,CAAS,EAARA,EAAG,GAAQb,EAAEb,QAEzB0B,EAAG,IACT,KAAK,EACL,KAAK,EACHb,EAAIa,EACJ,MAEF,KAAK,EAEH,OADAX,EAAEC,QACK,CACLhB,MAAO0B,EAAG,GACVpB,MAAM,GAGV,KAAK,EACHS,EAAEC,QACFJ,EAAIc,EAAG,GACPA,EAAK,CAAC,GACN,SAEF,KAAK,EACHA,EAAKX,EAAEI,IAAIU,MAEXd,EAAEG,KAAKW,MAEP,SAEF,QACE,KAAMhB,EAAIE,EAAEG,MAAML,EAAIA,EAAEiB,OAAS,GAAKjB,EAAEA,EAAEiB,OAAS,KAAkB,IAAVJ,EAAG,IAAsB,IAAVA,EAAG,IAAW,CACtFX,EAAI,EACJ,SAGF,GAAc,IAAVW,EAAG,MAAcb,GAAKa,EAAG,GAAKb,EAAE,IAAMa,EAAG,GAAKb,EAAE,IAAK,CACvDE,EAAEC,MAAQU,EAAG,GACb,MAGF,GAAc,IAAVA,EAAG,IAAYX,EAAEC,MAAQH,EAAE,GAAI,CACjCE,EAAEC,MAAQH,EAAE,GACZA,EAAIa,EACJ,MAGF,GAAIb,GAAKE,EAAEC,MAAQH,EAAE,GAAI,CACvBE,EAAEC,MAAQH,EAAE,GAEZE,EAAEI,IAAIY,KAAKL,GAEX,MAGEb,EAAE,IAAIE,EAAEI,IAAIU,MAEhBd,EAAEG,KAAKW,MAEP,SAGJH,EAAKhB,EAAKkB,KAAKpC,EAASuB,GACxB,MAAOZ,GACPuB,EAAK,CAAC,EAAGvB,GACTS,EAAI,EACJ,QACAD,EAAIE,EAAI,EAIZ,GAAY,EAARa,EAAG,GAAQ,MAAMA,EAAG,GACxB,MAAO,CACL1B,MAAO0B,EAAG,GAAKA,EAAG,QAAK,EACvBpB,MAAM,GAlFCL,CAAK,CAACuB,EAAGC,OAyFlBO,EAAuC,oBAAfC,WAA6BA,WAA+B,oBAAXC,OAAyBA,YAA2B,IAAXC,EAAyBA,EAAyB,oBAATC,KAAuBA,KAAO,GAQ7L,IAAIC,EANJ,SAA8BC,EAAIC,GAChC,OAEGD,EAFIC,EAAS,CACdC,QAAS,IACGD,EAAOC,SAAUD,EAAOC,QAG5BC,EAAqB,SAAUF,GAIzC,IAWIG,EAAQ,SAAUC,GAEpB,IAAIC,EAAO,8BACPC,EAAW,EACX9B,EAAI,CACN+B,OAAQH,EAAMD,OAASC,EAAMD,MAAMI,OACnCC,4BAA6BJ,EAAMD,OAASC,EAAMD,MAAMK,4BACxDC,KAAM,CACJC,OAAQ,SAASA,EAAOC,GACtB,OAAIA,aAAkBC,EACb,IAAIA,EAAMD,EAAOE,KAAMH,EAAOC,EAAOG,SAAUH,EAAOI,OACpDC,MAAMC,QAAQN,GAChBA,EAAOO,IAAIR,GAEXC,EAAOQ,QAAQ,KAAM,SAASA,QAAQ,KAAM,QAAQA,QAAQ,UAAW,MAGlFN,KAAM,SAAcO,GAClB,OAAOC,OAAOC,UAAUC,SAASlC,KAAK+B,GAAGI,MAAM,GAAI,IAErDC,MAAO,SAAeC,GAOpB,OANKA,EAAU,MACbL,OAAOM,eAAeD,EAAK,OAAQ,CACjCjE,QAAS6C,IAINoB,EAAU,MAGnBE,MAAO,SAASC,EAAUT,EAAGU,GAC3B,IAAIF,EACAG,EACAlB,EAAOrC,EAAEiC,KAAKI,KAAKO,GAIvB,OAFAU,EAAUA,GAAW,GAEbjB,GACN,IAAK,SAGH,GAFAkB,EAAKvD,EAAEiC,KAAKgB,MAAML,GAEdU,EAAQC,GACV,OAAOD,EAAQC,GAMjB,IAAK,IAAIC,KAHTJ,EAAQ,GACRE,EAAQC,GAAMH,EAEER,EACVA,EAAEa,eAAeD,KACnBJ,EAAMI,GAAOH,EAAUT,EAAEY,GAAMF,IAInC,OAAOF,EAET,IAAK,QAGH,OAFAG,EAAKvD,EAAEiC,KAAKgB,MAAML,GAEdU,EAAQC,GACHD,EAAQC,IAGjBH,EAAQ,GACRE,EAAQC,GAAMH,EACdR,EAAEc,SAAQ,SAAUhD,EAAGiD,GACrBP,EAAMO,GAAKN,EAAU3C,EAAG4C,MAEnBF,GAET,QACE,OAAOR,IAYbgB,YAAa,SAAqBC,GAChC,KAAOA,IAAYhC,EAAKiC,KAAKD,EAAQE,YACnCF,EAAUA,EAAQG,cAGpB,OAAIH,GACMA,EAAQE,UAAUE,MAAMpC,IAAS,CAAC,CAAE,SAAS,GAAGqC,cAGnD,QAUTC,cAAe,WACb,GAAwB,oBAAbC,SACT,OAAO,KAGT,GAAI,kBAAmBA,SACrB,OAAOA,SAASD,cAMlB,IACE,MAAM,IAAIE,MACV,MAAOC,GAOP,IAAIC,GAAO,+BAA+BC,KAAKF,EAAIG,QAAU,IAAI,GAEjE,GAAIF,EAAK,CACP,IAAIG,EAAUN,SAASO,qBAAqB,UAE5C,IAAK,IAAIhB,KAAKe,EACZ,GAAIA,EAAQf,GAAGY,KAAOA,EACpB,OAAOG,EAAQf,GAKrB,OAAO,QAIbiB,UAAW,CACTC,OAAQ,SAAgBtB,EAAIuB,GAC1B,IAAIjD,EAAO7B,EAAEiC,KAAKmB,MAAMpD,EAAE4E,UAAUrB,IAEpC,IAAK,IAAIC,KAAOsB,EACdjD,EAAK2B,GAAOsB,EAAMtB,GAGpB,OAAO3B,GAYTkD,aAAc,SAAsBC,EAAQC,EAAQC,EAAQC,GAE1D,IAAIC,GADJD,EAAOA,GAAQnF,EAAE4E,WACEI,GACfK,EAAM,GAEV,IAAK,IAAIC,KAASF,EAChB,GAAIA,EAAQ3B,eAAe6B,GAAQ,CACjC,GAAIA,GAASL,EACX,IAAK,IAAIM,KAAYL,EACfA,EAAOzB,eAAe8B,KACxBF,EAAIE,GAAYL,EAAOK,IAMxBL,EAAOzB,eAAe6B,KACzBD,EAAIC,GAASF,EAAQE,IAK3B,IAAIE,EAAML,EAAKH,GASf,OARAG,EAAKH,GAAUK,EAEfrF,EAAE4E,UAAUa,IAAIzF,EAAE4E,WAAW,SAAUpB,EAAKvE,GACtCA,IAAUuG,GAAOhC,GAAOwB,IAC1BxE,KAAKgD,GAAO6B,MAITA,GAGTI,IAAK,SAASA,EAAI7C,EAAG8C,EAAUrD,EAAMiB,GACnCA,EAAUA,GAAW,GACrB,IAAIL,EAAQjD,EAAEiC,KAAKgB,MAEnB,IAAK,IAAIU,KAAKf,EACZ,GAAIA,EAAEa,eAAeE,GAAI,CACvB+B,EAAS7E,KAAK+B,EAAGe,EAAGf,EAAEe,GAAItB,GAAQsB,GAElC,IAAIgC,EAAW/C,EAAEe,GACbiC,EAAe5F,EAAEiC,KAAKI,KAAKsD,GAEV,WAAjBC,GAA8BtC,EAAQL,EAAM0C,IAGpB,UAAjBC,GAA6BtC,EAAQL,EAAM0C,MACpDrC,EAAQL,EAAM0C,KAAa,EAC3BF,EAAIE,EAAUD,EAAU/B,EAAGL,KAJ3BA,EAAQL,EAAM0C,KAAa,EAC3BF,EAAIE,EAAUD,EAAU,KAAMpC,OASxCuC,QAAS,GACTC,aAAc,SAAsBC,EAAOL,GACzC1F,EAAEgG,kBAAkB5B,SAAU2B,EAAOL,IAEvCM,kBAAmB,SAA2BC,EAAWF,EAAOL,GAC9D,IAAIQ,EAAM,CACRR,SAAUA,EACVO,UAAWA,EACXE,SAAU,oGAGZnG,EAAEoG,MAAMC,IAAI,sBAAuBH,GAEnCA,EAAII,SAAW9D,MAAMM,UAAUE,MAAMvD,MAAMyG,EAAID,UAAUM,iBAAiBL,EAAIC,WAE9EnG,EAAEoG,MAAMC,IAAI,gCAAiCH,GAE7C,IAAK,IAAWrC,EAAPF,EAAI,EAAYE,EAAUqC,EAAII,SAAS3C,MAC9C3D,EAAEwG,iBAAiB3C,GAAmB,IAAVkC,EAAgBG,EAAIR,WAGpDc,iBAAkB,SAA0B3C,EAASkC,EAAOL,GAE1D,IAAIe,EAAWzG,EAAEiC,KAAK2B,YAAYC,GAE9BuB,EAAUpF,EAAE4E,UAAU6B,GAE1B5C,EAAQE,UAAYF,EAAQE,UAAUpB,QAAQd,EAAM,IAAIc,QAAQ,OAAQ,KAAO,aAAe8D,EAE9F,IAAIC,EAAS7C,EAAQ8C,WAEjBD,GAA4C,QAAlCA,EAAOE,SAAS1C,gBAC5BwC,EAAO3C,UAAY2C,EAAO3C,UAAUpB,QAAQd,EAAM,IAAIc,QAAQ,OAAQ,KAAO,aAAe8D,GAG9F,IACIP,EAAM,CACRrC,QAASA,EACT4C,SAAUA,EACVrB,QAASA,EACTyB,KALShD,EAAQiD,aAQnB,SAASC,EAAsBC,GAC7Bd,EAAIc,gBAAkBA,EAEtBhH,EAAEoG,MAAMC,IAAI,gBAAiBH,GAE7BA,EAAIrC,QAAQoD,UAAYf,EAAIc,gBAE5BhH,EAAEoG,MAAMC,IAAI,kBAAmBH,GAE/BlG,EAAEoG,MAAMC,IAAI,WAAYH,GAExBR,GAAYA,EAAS7E,KAAKqF,EAAIrC,SAKhC,GAFA7D,EAAEoG,MAAMC,IAAI,sBAAuBH,IAE9BA,EAAIW,KAIP,OAHA7G,EAAEoG,MAAMC,IAAI,WAAYH,QAExBR,GAAYA,EAAS7E,KAAKqF,EAAIrC,UAMhC,GAFA7D,EAAEoG,MAAMC,IAAI,mBAAoBH,GAE3BA,EAAId,QAKT,GAAIW,GAASnE,EAAMsF,OAAQ,CACzB,IAAIC,EAAS,IAAID,OAAOlH,EAAEoH,UAE1BD,EAAOE,UAAY,SAAUC,GAC3BP,EAAsBO,EAAIC,OAG5BJ,EAAOK,YAAYC,KAAKC,UAAU,CAChCjB,SAAUP,EAAIO,SACdI,KAAMX,EAAIW,KACVc,gBAAgB,UAGlBZ,EAAsB/G,EAAE4H,UAAU1B,EAAIW,KAAMX,EAAId,QAASc,EAAIO,gBAjB7DM,EAAsB/G,EAAEiC,KAAKC,OAAOgE,EAAIW,QAoB5Ce,UAAW,SAAmBC,EAAMzC,EAASqB,GAC3C,IAAIP,EAAM,CACRW,KAAMgB,EACNzC,QAASA,EACTqB,SAAUA,GASZ,OANAzG,EAAEoG,MAAMC,IAAI,kBAAmBH,GAE/BA,EAAI/D,OAASnC,EAAE8H,SAAS5B,EAAIW,KAAMX,EAAId,SAEtCpF,EAAEoG,MAAMC,IAAI,iBAAkBH,GAEvB9D,EAAMsF,UAAU1H,EAAEiC,KAAKC,OAAOgE,EAAI/D,QAAS+D,EAAIO,WAExDqB,SAAU,SAAkBD,EAAMzC,GAChC,IAAI2C,EAAO3C,EAAQ2C,KAEnB,GAAIA,EAAM,CACR,IAAK,IAAIzC,KAASyC,EAChB3C,EAAQE,GAASyC,EAAKzC,UAGjBF,EAAQ2C,KAGjB,IAAIC,EAAY,IAAIC,EAGpB,OAFAC,EAASF,EAAWA,EAAUG,KAAMN,GAwFxC,SAASO,EAAaP,EAAMG,EAAW5C,EAASiD,EAAWC,EAAUC,EAASC,GAC5E,IAAK,IAAIlD,KAASF,EAChB,GAAKA,EAAQ3B,eAAe6B,IAAWF,EAAQE,GAA/C,CAIA,IAAImD,EAAWrD,EAAQE,GACvBmD,EAAWjG,MAAMC,QAAQgG,GAAYA,EAAW,CAACA,GAEjD,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAS1H,SAAU2H,EAAG,CACxC,GAAIF,GAAUA,GAAUlD,EAAQ,IAAMoD,EACpC,OAGF,IAAIC,EAAUF,EAASC,GACnB1D,EAAS2D,EAAQ3D,OACjB4D,IAAeD,EAAQC,WACvBC,IAAWF,EAAQE,OACnBC,EAAmB,EACnBvG,EAAQoG,EAAQpG,MAEpB,GAAIsG,IAAWF,EAAQA,QAAQvH,OAAQ,CAErC,IAAI2H,EAAQJ,EAAQA,QAAQ5F,WAAWkB,MAAM,aAAa,GAC1D0E,EAAQA,QAAUK,OAAOL,EAAQA,QAAQM,OAAQF,EAAQ,KAG3DJ,EAAUA,EAAQA,SAAWA,EAE7B,IACA,IAAIO,EAAcb,EAAUlJ,KAAMgK,EAAMb,EAAUY,IAAgBlB,EAAUoB,KAAMD,GAAOD,EAAYjK,MAAM8B,OAAQmI,EAAcA,EAAY/J,KAAM,CACjJ,IAAIkK,EAAMH,EAAYjK,MAEtB,GAAI+I,EAAUjH,OAAS8G,EAAK9G,OAE1B,OAGF,KAAIsI,aAAejH,GAAnB,CAIA,IAAIkH,EAAc,EAElB,GAAIT,GAAUK,GAAelB,EAAUoB,KAAKG,KAAM,CAIhD,GAHAZ,EAAQa,UAAYL,IAChBlF,EAAQ0E,EAAQnE,KAAKqD,IAGvB,MAGF,IAAI4B,EAAOxF,EAAMyF,OAASd,GAAc3E,EAAM,GAAKA,EAAM,GAAGlD,OAAS,GACjE4I,EAAK1F,EAAMyF,MAAQzF,EAAM,GAAGlD,OAC5B6I,EAAIT,EAIR,IAFAS,GAAKV,EAAYjK,MAAM8B,OAEhB0I,GAAQG,GACbV,EAAcA,EAAY/J,KAC1ByK,GAAKV,EAAYjK,MAAM8B,OAOzB,GAHA6I,GAAKV,EAAYjK,MAAM8B,OACvBoI,EAAMS,EAEFV,EAAYjK,iBAAiBmD,EAC/B,SAIF,IAAK,IAAIyH,EAAIX,EAAaW,IAAM7B,EAAUoB,OAASQ,EAAID,GAAyB,iBAAZE,EAAE5K,QAAuB4K,EAAEN,KAAKtK,MAAM4J,QAASgB,EAAIA,EAAE1K,KACvHmK,IACAM,GAAKC,EAAE5K,MAAM8B,OAGfuI,IAEAD,EAAMxB,EAAK7E,MAAMmG,EAAKS,GACtB3F,EAAMyF,OAASP,MACV,CACLR,EAAQa,UAAY,EACpB,IAAIvF,EAAQ0E,EAAQnE,KAAK6E,GAG3B,GAAKpF,EAAL,CAQI2E,IACFE,EAAmB7E,EAAM,GAAKA,EAAM,GAAGlD,OAAS,GAG9C0I,EAAOxF,EAAMyF,MAAQZ,EACrB7E,EAAQA,EAAM,GAAGjB,MAAM8F,GACvBa,EAAKF,EAAOxF,EAAMlD,OAFtB,IAGIkE,EAASoE,EAAIrG,MAAM,EAAGyG,GACtBK,EAAQT,EAAIrG,MAAM2G,GAClBI,EAAab,EAAYK,KAEzBtE,IACF8E,EAAa7B,EAASF,EAAW+B,EAAY9E,GAC7CkE,GAAOlE,EAAOlE,QAGhBiJ,EAAYhC,EAAW+B,EAAYT,GACnC,IAAIW,EAAU,IAAI7H,EAAMkD,EAAON,EAAShF,EAAE8H,SAAS7D,EAAOe,GAAUf,EAAO1B,EAAO0B,EAAO4E,GAQzF,GAPAK,EAAchB,EAASF,EAAW+B,EAAYE,GAE1CH,GACF5B,EAASF,EAAWkB,EAAaY,GAG/BR,EAAc,GAAGlB,EAAaP,EAAMG,EAAW5C,EAAS8D,EAAYK,KAAMJ,GAAK,EAAM7D,EAAQ,IAAMoD,GACnGH,EAAS,WAhCX,GAAIA,EACF,UA/KRH,CAAaP,EAAMG,EAAW5C,EAAS4C,EAAUG,KAAM,GAyS3D,SAAiB+B,GACf,IAAIC,EAAQ,GACRC,EAAOF,EAAK/B,KAAKhJ,KAErB,KAAOiL,IAASF,EAAKd,MACnBe,EAAMnJ,KAAKoJ,EAAKnL,OAChBmL,EAAOA,EAAKjL,KAGd,OAAOgL,EAjTEE,CAAQrC,IAEjB5B,MAAO,CACLkE,IAAK,GACLC,IAAK,SAAaC,EAAM9E,GACtB,IAAIU,EAAQpG,EAAEoG,MAAMkE,IACpBlE,EAAMoE,GAAQpE,EAAMoE,IAAS,GAC7BpE,EAAMoE,GAAMxJ,KAAK0E,IAEnBW,IAAK,SAAamE,EAAMtE,GACtB,IAAIuE,EAAYzK,EAAEoG,MAAMkE,IAAIE,GAE5B,GAAKC,GAAcA,EAAU1J,OAI7B,IAAK,IAAW2E,EAAP/B,EAAI,EAAa+B,EAAW+E,EAAU9G,MAC7C+B,EAASQ,KAIf9D,MAAOA,GAIT,SAASA,EAAMC,EAAMC,EAASC,EAAOmI,EAAY7B,GAC/CrI,KAAK6B,KAAOA,EACZ7B,KAAK8B,QAAUA,EACf9B,KAAK+B,MAAQA,EAEb/B,KAAKO,OAAqC,GAA3B2J,GAAc,IAAI3J,OACjCP,KAAKqI,SAAWA,EAgMlB,SAASZ,IAEP,IAAIE,EAAO,CACTlJ,MAAO,KACPsK,KAAM,KACNpK,KAAM,MAIJiK,EAAO,CACTnK,MAAO,KACPsK,KAAMpB,EACNhJ,KAAM,MAERgJ,EAAKhJ,KAAOiK,EAGZ5I,KAAK2H,KAAOA,EAGZ3H,KAAK4I,KAAOA,EACZ5I,KAAKO,OAAS,EAYhB,SAASmH,EAASgC,EAAME,EAAMnL,GAE5B,IAAIE,EAAOiL,EAAKjL,KACZwL,EAAU,CACZ1L,MAAOA,EACPsK,KAAMa,EACNjL,KAAMA,GAKR,OAHAiL,EAAKjL,KAAOwL,EACZxL,EAAKoK,KAAOoB,EACZT,EAAKnJ,SACE4J,EAWT,SAASX,EAAYE,EAAME,EAAMQ,GAG/B,IAFA,IAAIzL,EAAOiL,EAAKjL,KAEPwE,EAAI,EAAGA,EAAIiH,GAASzL,IAAS+K,EAAKd,KAAMzF,IAC/CxE,EAAOA,EAAKA,KAGdiL,EAAKjL,KAAOA,EACZA,EAAKoK,KAAOa,EACZF,EAAKnJ,QAAU4C,EAqBjB,GA7RA/B,EAAMD,MAAQ3B,EAWdoC,EAAMsF,UAAY,SAASA,EAAU9E,EAAG6D,GACtC,GAAgB,iBAAL7D,EACT,OAAOA,EAGT,GAAIJ,MAAMC,QAAQG,GAAI,CACpB,IAAIiI,EAAI,GAIR,OAHAjI,EAAEc,SAAQ,SAAUtE,GAClByL,GAAKnD,EAAUtI,EAAGqH,MAEboE,EAGT,IAAI3E,EAAM,CACR7D,KAAMO,EAAEP,KACRC,QAASoF,EAAU9E,EAAEN,QAASmE,GAC9BqE,IAAK,OACLC,QAAS,CAAC,QAASnI,EAAEP,MACrB2I,WAAY,GACZvE,SAAUA,GAERwE,EAAUrI,EAAEL,MAEZ0I,IACEzI,MAAMC,QAAQwI,GAChBzI,MAAMM,UAAU9B,KAAKvB,MAAMyG,EAAI6E,QAASE,GAExC/E,EAAI6E,QAAQ/J,KAAKiK,IAIrBjL,EAAEoG,MAAMC,IAAI,OAAQH,GAEpB,IAAI8E,EAAa,GAEjB,IAAK,IAAIR,KAAQtE,EAAI8E,WACnBA,GAAc,IAAMR,EAAO,MAAQtE,EAAI8E,WAAWR,IAAS,IAAI7H,QAAQ,KAAM,UAAY,IAG3F,MAAO,IAAMuD,EAAI4E,IAAM,WAAa5E,EAAI6E,QAAQG,KAAK,KAAO,IAAMF,EAAa,IAAM9E,EAAI5D,QAAU,KAAO4D,EAAI4E,IAAM,MA2OjHlJ,EAAMwC,SACT,OAAKxC,EAAMuJ,kBAKNnL,EAAEgC,6BAELJ,EAAMuJ,iBAAiB,WAAW,SAAU7D,GAC1C,IAAI8D,EAAU3D,KAAK4D,MAAM/D,EAAIC,MACzB1F,EAAOuJ,EAAQ3E,SACfI,EAAOuE,EAAQvE,KACfc,EAAiByD,EAAQzD,eAE7B/F,EAAM4F,YAAYxH,EAAE4H,UAAUf,EAAM7G,EAAE4E,UAAU/C,GAAOA,IAEnD8F,GACF/F,EAAM0J,WAEP,GAGEtL,GAnBEA,EAuBX,IAAIuL,EAASvL,EAAEiC,KAAKkC,gBAUpB,SAASqH,IACFxL,EAAE+B,QACL/B,EAAE8F,eAIN,GAdIyF,IACFvL,EAAEoH,SAAWmE,EAAOhH,IAEhBgH,EAAOE,aAAa,iBACtBzL,EAAE+B,QAAS,KAUV/B,EAAE+B,OAAQ,CAOb,IAAI2J,EAAatH,SAASsH,WAEP,YAAfA,GAA2C,gBAAfA,GAAgCH,GAAUA,EAAOI,MAC/EvH,SAAS+G,iBAAiB,mBAAoBK,GAE1CrK,OAAOyK,sBACTzK,OAAOyK,sBAAsBJ,GAE7BrK,OAAO0K,WAAWL,EAAgC,IAKxD,OAAOxL,EA/rBG,CAXkB,oBAAXmB,OAAyBA,OACb,oBAAtB2K,mBAAqCzK,gBAAgByK,kBAAoBzK,KAChF,IA2sBEG,EAAOC,UACTD,EAAOC,QAAUE,QAIW,IAAnBV,IACTA,EAAeU,MAAQA,GAOzBA,EAAMiD,UAAUmH,OAAS,CACvB,QAAW,kBACX,OAAU,iBACV,QAAW,CACTpD,QAAS,4GACTE,QAAQ,GAEV,MAAS,0BACT,IAAO,CACLF,QAAS,wHACTE,QAAQ,EACR7D,OAAQ,CACN,IAAO,CACL2D,QAAS,kBACT3D,OAAQ,CACN,YAAe,QACf,UAAa,iBAGjB,aAAc,CACZ2D,QAAS,sCACT3D,OAAQ,CACN,YAAe,CAAC,KAAM,CACpB2D,QAAS,mBACTC,YAAY,MAIlB,YAAe,OACf,YAAa,CACXD,QAAS,YACT3D,OAAQ,CACN,UAAa,mBAKrB,OAAU,qBAEZrD,EAAMiD,UAAUmH,OAAY,IAAE/G,OAAO,cAAcA,OAAe,OAAIrD,EAAMiD,UAAUmH,OAAe,OAErGpK,EAAMyE,MAAMmE,IAAI,QAAQ,SAAUrE,GACf,WAAbA,EAAI7D,OACN6D,EAAI8E,WAAkB,MAAI9E,EAAI5D,QAAQK,QAAQ,QAAS,SAG3DE,OAAOM,eAAexB,EAAMiD,UAAUmH,OAAOjB,IAAK,aAAc,CAY9D7L,MAAO,SAAoB+M,EAASnK,GAClC,IAAIoK,EAAsB,GAC1BA,EAAoB,YAAcpK,GAAQ,CACxC8G,QAAS,oCACTC,YAAY,EACZ5D,OAAQrD,EAAMiD,UAAU/C,IAE1BoK,EAA2B,MAAI,uBAC/B,IAAIjH,EAAS,CACX,iBAAkB,CAChB2D,QAAS,4BACT3D,OAAQiH,IAGZjH,EAAO,YAAcnD,GAAQ,CAC3B8G,QAAS,UACT3D,OAAQrD,EAAMiD,UAAU/C,IAE1B,IAAIqK,EAAM,GACVA,EAAIF,GAAW,CACbrD,QAASK,OAAO,mEAAmEC,OAAOtG,QAAQ,OAAO,WACvG,OAAOqJ,KACL,KACJpD,YAAY,EACZC,QAAQ,EACR7D,OAAQA,GAEVrD,EAAMiD,UAAUG,aAAa,SAAU,QAASmH,MAGpDvK,EAAMiD,UAAUuH,IAAMxK,EAAMiD,UAAUC,OAAO,SAAU,IACvDlD,EAAMiD,UAAUwH,KAAOzK,EAAMiD,UAAUmH,OACvCpK,EAAMiD,UAAUyH,OAAS1K,EAAMiD,UAAUmH,OACzCpK,EAAMiD,UAAU0H,IAAM3K,EAAMiD,UAAUmH,OAKtC,SAAWpK,GACT,IAAI4K,EAAS,gDACb5K,EAAMiD,UAAU4H,IAAM,CACpB,QAAW,mBACX,OAAU,CACR7D,QAAS,iCACT3D,OAAQ,CACN,KAAQ,WACR,6BAA8B,CAC5B2D,QAAS,8EACTC,YAAY,EACZrG,MAAO,cAKb,IAAO,CACLoG,QAASK,OAAO,YAAcuD,EAAOtD,OAAS,kBAAmB,KACjEJ,QAAQ,EACR7D,OAAQ,CACN,SAAY,QACZ,YAAe,YAGnB,SAAYgE,OAAO,wBAA0BuD,EAAOtD,OAAS,kBAC7D,OAAU,CACRN,QAAS4D,EACT1D,QAAQ,GAEV,SAAY,+CACZ,UAAa,gBACb,SAAY,oBACZ,YAAe,aAEjBlH,EAAMiD,UAAU4H,IAAY,OAAExH,OAAO+C,KAAOpG,EAAMiD,UAAU4H,IAC5D,IAAIT,EAASpK,EAAMiD,UAAUmH,OAEzBA,IACFA,EAAOjB,IAAI2B,WAAW,QAAS,OAC/B9K,EAAMiD,UAAUG,aAAa,SAAU,aAAc,CACnD,aAAc,CACZ4D,QAAS,6CACT3D,OAAQ,CACN,YAAa,CACX2D,QAAS,aACT3D,OAAQ+G,EAAOjB,IAAI9F,QAErB,YAAe,wBACf,aAAc,CACZ2D,QAAS,MACT3D,OAAQrD,EAAMiD,UAAU4H,MAG5BjK,MAAO,iBAERwJ,EAAOjB,MAvDd,CAyDGnJ,GAMHA,EAAMiD,UAAU8H,MAAQ,CACtB,QAAW,CAAC,CACV/D,QAAS,kCACTC,YAAY,GACX,CACDD,QAAS,mBACTC,YAAY,EACZC,QAAQ,IAEV,OAAU,CACRF,QAAS,iDACTE,QAAQ,GAEV,aAAc,CACZF,QAAS,2FACTC,YAAY,EACZ5D,OAAQ,CACN,YAAe,UAGnB,QAAW,6GACX,QAAW,qBACX,SAAY,YACZ,OAAU,wDACV,SAAY,+CACZ,YAAe,iBAMjBrD,EAAMiD,UAAU+H,WAAahL,EAAMiD,UAAUC,OAAO,QAAS,CAC3D,aAAc,CAAClD,EAAMiD,UAAU8H,MAAM,cAAe,CAClD/D,QAAS,0FACTC,YAAY,IAEd,QAAW,CAAC,CACVD,QAAS,kCACTC,YAAY,GACX,CACDD,QAAS,uXACTC,YAAY,IAEd,OAAU,gOAEV,SAAY,oFACZ,SAAY,qFAEdjH,EAAMiD,UAAU+H,WAAW,cAAc,GAAGhE,QAAU,uEACtDhH,EAAMiD,UAAUG,aAAa,aAAc,UAAW,CACpD,MAAS,CACP4D,QAAS,0JACTC,YAAY,EACZC,QAAQ,GAGV,oBAAqB,CACnBF,QAAS,gKACTpG,MAAO,YAET,UAAa,CAAC,CACZoG,QAAS,wGACTC,YAAY,EACZ5D,OAAQrD,EAAMiD,UAAU+H,YACvB,CACDhE,QAAS,gDACT3D,OAAQrD,EAAMiD,UAAU+H,YACvB,CACDhE,QAAS,oDACTC,YAAY,EACZ5D,OAAQrD,EAAMiD,UAAU+H,YACvB,CACDhE,QAAS,qcACTC,YAAY,EACZ5D,OAAQrD,EAAMiD,UAAU+H,aAE1B,SAAY,8BAEdhL,EAAMiD,UAAUG,aAAa,aAAc,SAAU,CACnD,kBAAmB,CACjB4D,QAAS,oEACTE,QAAQ,EACR7D,OAAQ,CACN,uBAAwB,CACtB2D,QAAS,QACTpG,MAAO,UAET,cAAiB,CACfoG,QAAS,6DACTC,YAAY,EACZ5D,OAAQ,CACN,4BAA6B,CAC3B2D,QAAS,UACTpG,MAAO,eAETwF,KAAMpG,EAAMiD,UAAU+H,aAG1B,OAAU,cAKZhL,EAAMiD,UAAUmH,QAClBpK,EAAMiD,UAAUmH,OAAOjB,IAAI2B,WAAW,SAAU,cAGlD9K,EAAMiD,UAAUgI,GAAKjL,EAAMiD,UAAU+H,WAMf,oBAATtL,MAAyBA,KAAKM,OAAUN,KAAK+C,UAAaA,SAASyI,gBAQ9ExL,KAAKM,MAAMmL,cAAgB,SAAU7G,GACnCA,EAAYA,GAAa7B,SACzB,IAAI2I,EAAa,CACf,GAAM,aACN,GAAM,SACN,GAAM,OACN,IAAO,aACP,KAAQ,aACR,GAAM,OACN,IAAO,QACP,EAAK,IACL,IAAO,SAETvK,MAAMM,UAAUE,MAAMnC,KAAKoF,EAAUM,iBAAiB,kBAAkB7C,SAAQ,SAAUsJ,GAExF,IAAIA,EAAIvB,aAAa,mBAArB,CAUA,IALA,IACIhF,EADAlC,EAAMyI,EAAIC,aAAa,YAEvBvG,EAASsG,EACTnL,EAAO,8BAEJ6E,IAAW7E,EAAKiC,KAAK4C,EAAO3C,YACjC2C,EAASA,EAAOC,WAOlB,GAJID,IACFD,GAAYuG,EAAIjJ,UAAUE,MAAMpC,IAAS,CAAC,CAAE,KAAK,KAG9C4E,EAAU,CACb,IAAIyG,GAAa3I,EAAIN,MAAM,aAAe,CAAC,CAAE,KAAK,GAClDwC,EAAWsG,EAAWG,IAAcA,EAGtC,IAAIrG,EAAOzC,SAAS+I,cAAc,QAClCtG,EAAK9C,UAAY,YAAc0C,EAC/BuG,EAAIlG,YAAc,GAClBD,EAAKC,YAAc,WACnBkG,EAAII,YAAYvG,GAChB,IAAIwG,EAAM,IAAIC,eACdD,EAAIE,KAAK,MAAOhJ,GAAK,GAErB8I,EAAIG,mBAAqB,WACD,GAAlBH,EAAI3B,aACF2B,EAAII,OAAS,KAAOJ,EAAIK,cAC1B7G,EAAKC,YAAcuG,EAAIK,aACvB/L,EAAM6E,iBAAiBK,GAEvBmG,EAAIW,aAAa,kBAAmB,KAC3BN,EAAII,QAAU,IACvB5G,EAAKC,YAAc,WAAauG,EAAII,OAAS,yBAA2BJ,EAAIO,WAE5E/G,EAAKC,YAAc,6CAKzBuG,EAAIQ,KAAK,WAIbzJ,SAAS+G,iBAAiB,oBAAoB,WAE5C9J,KAAKM,MAAMmL,uBAkCjB,SAASgB,EAAUC,GACjB,GAAKA,QAAmBC,IAAVD,EAId,OAAQA,GACN,KAAK,IAAmC,cACtC,OAAO,kCAET,KAAK,IAAmC,aACtC,OAAO,kCAET,KAAK,IAAmC,eACtC,OAAO,kCAET,KAAK,IAAmC,gBACtC,OAAO,kCAET,KAAK,IAAmCE,WACtC,OAAO,kCAET,KAAK,IAAmCC,OACtC,OAAO,kCAET,KAAK,IAAmCC,QACtC,OAAO,kCAET,KAAK,IAAmCC,UACtC,OAAO,kCAET,KAAK,IAAmCC,QACtC,OAAO,kCAET,KAAK,IAAmCC,SACtC,OAAO,kCAET,KAAK,IAAmCC,QACtC,OAAO,kCAET,KAAK,IAAmC,aACtC,OAAO,kCAET,KAAK,IAAmCC,KACtC,OAAO,kCAET,KAAK,IAAmC,gBACtC,OAAO,kCAET,KAAK,IAAmC,YACtC,OAAO,kCAET,KAAK,IAAmC,aACtC,OAAO,kCAET,KAAK,IAAmCC,MACtC,OAAO,kCAET,KAAK,IAAmCC,QACtC,OAAO,kCAET,KAAK,IAAmCC,KACtC,OAAO,kCAET,KAAK,IAAmC,oBACtC,OAAO,kCAET,KAAK,IAAmC,kBACtC,OAAO,kCAET,KAAK,IAAmC,mBACtC,OAAO,kCAET,KAAK,IAAmCC,UACtC,OAAO,kCAET,KAAK,IAAmCC,SACtC,OAAO,kCAET,KAAK,IAAmCC,SACtC,OAAO,kCAET,KAAK,IAAmCC,OACtC,OAAO,kCAET,KAAK,IAAmCC,KACtC,OAAO,kCAET,KAAK,IAAmCC,QACtC,OAAO,kCAET,QACE,OAAO,mCAIb,IAAIC,EAAmB,SAA0BC,GAC/C,IAAIC,EAAQD,EAAGC,MACf,OAAO,YAAE,QAAS,KAAM,iBAAmBA,EAAQ,YAKjDC,EAEJ,WACE,SAASC,EAAQC,GACf,IAAIC,EAAQhP,KAEZ,YAAiBA,KAAM+O,GACvB/O,KAAKiP,OAAS,gBACdjP,KAAKkP,WAAa,oBAClBlP,KAAKmP,YAAa,EAClBnP,KAAKiG,SAAW,aAChBjG,KAAKoP,aAAc,EACnBpP,KAAKqP,SAAW,IAAgCC,OAChDtP,KAAKuP,UAAW,EAChBvP,KAAKuN,MAAQ,IAAmCiC,QAChDxP,KAAKyP,SAAU,EACfzP,KAAK0P,gBAAkB,EACvB1P,KAAK2P,yBAA0B,EAE/B3P,KAAK4P,aAAe,SAAUC,GAC5B,OAAO7R,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,IAAIc,EAAWC,EACf,OAAO7Q,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,OAAMoQ,GAAyB,UAAfA,EAAO7M,KAGvB6M,EAAOG,iBACA,CAAC,EAENhQ,KAAKiQ,iBANyC,CAAC,EAE/C,GAMJ,KAAK,GACHH,EAAYnB,EAAGjP,SAEEoQ,EAAUI,WAAaJ,EAAUI,UAAU5J,aAAewJ,EAAUK,YAAc,GACjGJ,EAAWD,EAAUI,UAAU5J,YAAY8J,WAAWzP,OAAOsP,eAAeE,aAC5EvM,SAASyM,YAAY,cAAc,EAAoB,KAAbN,GAAgC,KAAbA,EAAkB,KAAO,SAEtFnM,SAASyM,YAAY,cAAc,EAAO,QAG5C1B,EAAGlP,MAAQ,EAEb,KAAK,EACH,MAAO,CAAC,WAQlBO,KAAKsQ,UAAY,WACf,OAAOtS,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,OAAO9P,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,MAAO,CAAC,EAENO,KAAKuQ,eAET,KAAK,EAGH,OAFA5B,EAAGjP,OAEI,CAAC,EAENM,KAAKwQ,oBAET,KAAK,EAGH,OAFA7B,EAAGjP,OAEI,CAAC,WAQlBM,KAAKyQ,oBAAsB,YAAYzQ,KAAM,sBAAuB,GACpEA,KAAK0Q,cAAgB,YAAY1Q,KAAM,gBAAiB,GA68B1D,OA18BA8O,EAAQxM,UAAUqO,kBAAoB,WACpC,OAAO3S,EAAUgC,UAAM,OAAQ,GAAQ,WACrC,OAAOd,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,MAAO,CAAC,EAENO,KAAK4Q,mBAET,KAAK,EAGH,OAFAjC,EAAGjP,OAEI,CAAC,EAENM,KAAKsN,aAET,KAAK,EAGH,OAFAqB,EAAGjP,OAEI,CAAC,WAQlBoP,EAAQxM,UAAUuO,iBAAmB,WACnC,OAAO7S,EAAUgC,UAAM,OAAQ,GAAQ,WACrC,IAAI8Q,EACJ,OAAO5R,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,MAAO,CAAC,EAENO,KAAK+Q,mBAET,KAAK,EAEH,OADAD,EAAoBnC,EAAGjP,OAChB,CAAC,EAENM,KAAKgR,gBAET,KAAK,EAGH,OAFArC,EAAGjP,OAEEoR,EAGE,CAAC,EAEN9Q,KAAKiR,gBALwB,CAAC,EAE9B,GAKJ,KAAK,EACHtC,EAAGjP,OAEHiP,EAAGlP,MAAQ,EAEb,KAAK,EACH,MAAO,CAAC,WAQlBqP,EAAQxM,UAAU4O,mBAAqB,WACrC,OAAOlT,EAAUgC,UAAM,OAAQ,GAAQ,WACrC,OAAOd,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,OAAKO,KAAK2P,wBAGH,CAAC,EAEN3P,KAAKiR,gBALmC,CAAC,EAEzC,GAKJ,KAAK,EACHtC,EAAGjP,OAEHM,KAAK2P,yBAA0B,EAC/BhB,EAAGlP,MAAQ,EAEb,KAAK,EACH,MAAO,CAAC,WAQlBqP,EAAQxM,UAAUgL,UAAY,WAC5B,OAAOtP,EAAUgC,UAAM,OAAQ,GAAQ,WACrC,IAAIuN,EACJ,OAAOrO,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,OAAIO,KAAKqP,WAAa,IAAgCC,QAAWtP,KAAKuN,MAO/D,CAAC,EAEND,EAAUtN,KAAKuN,SARfvN,KAAKmR,gBAAa3D,EACX,CAAC,IASZ,KAAK,EAGH,OAFAD,EAAQoB,EAAGjP,OAAO6N,MAClBvN,KAAKmR,WAAa5D,EACX,CAAC,WAQlBuB,EAAQxM,UAAU8O,eAAiB,SAAUvB,GAC3C,OAAO7R,EAAUgC,UAAM,OAAQ,GAAQ,WACrC,OAAOd,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,OAAKoQ,GAAWA,EAAOwB,OAMjBrR,KAAKiG,UAA8B,eAAlBjG,KAAKiG,UAA6B4J,EAAOwB,SAAWrR,KAAKiG,SAGzE,CAAC,EAENjG,KAAKiR,gBAL2F,CAAC,EAEjG,GAPO,CAAC,GAYZ,KAAK,EACHtC,EAAGjP,OAEHiP,EAAGlP,MAAQ,EAEb,KAAK,EACH,MAAO,CAAC,WAQlBqP,EAAQxM,UAAU2O,aAAe,WAC/B,OAAOjT,EAAUgC,UAAM,OAAQ,GAAQ,WACrC,OAAOd,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,OAAKO,KAAK+D,IAGH,CAAC,EAEN/D,KAAKsR,aALe,CAAC,EAErB,GAKJ,KAAK,EAGH,OAFA3C,EAAGjP,OAEI,CAAC,EAEN,GAEJ,KAAK,EACH,MAAO,CAAC,EAENM,KAAKwQ,oBAET,KAAK,EACH7B,EAAGjP,OAEHiP,EAAGlP,MAAQ,EAEb,KAAK,EACH,MAAO,CAAC,WAQlBqP,EAAQxM,UAAUyO,gBAAkB,WAClC,IAAI/B,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,GACtBsF,UAAaoL,EAAM/I,UAA+B,KAAnB+I,EAAM/I,SAKnB,eAAnB+I,EAAM/I,SAQR3H,IAHYsF,SAASyI,cAAc,6BAA+B2C,EAAM/I,SAAW,OAJnF3H,GAAQ,GALRA,GAAQ,OAmBdwQ,EAAQxM,UAAU0O,aAAe,WAC/B,IAAIhC,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,GAC3B,OAAON,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,IAAajE,EAETiE,EAAQhP,KAEZ,OAAOd,EAAYc,MAAM,SAAU2O,GACjC,OAAK/K,UAAa5D,KAAKiG,UAA8B,KAAlBjG,KAAKiG,UAAqC,eAAlBjG,KAAKiG,SAOtDrC,SAASyI,cAAc,sBAAwBrM,KAAKiG,SAAW,OAGvE3H,IACO,CAAC,MAKVyM,EAASnH,SAAS+I,cAAc,WAEzB4E,OAAS,WACd,OAAOvT,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,OAAO9P,EAAYc,MAAM,SAAU2O,GAGjC,OAFA5D,EAAOoC,aAAa,0BAA2BnN,KAAKiG,UACpDjG,KAAKyQ,oBAAoBe,KAAKxR,KAAKiG,UAC5B,CAAC,UAOd8E,EAAO0G,QAAU,WACf,OAAOzT,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,OAAO9P,EAAYc,MAAM,SAAU2O,GAOjC,OANI5D,EAAOvH,eACTuH,EAAOvH,cAAckO,YAAY3G,GAInC/K,KAAKyQ,oBAAoBe,KAAKxR,KAAKiG,UAC5B,CAAC,UAOd8E,EAAOhH,IAAM,qDAAuD/D,KAAKiG,SAAW,MACpF8E,EAAOoC,aAAa,mBAAoBnN,KAAKiG,UAC7C8E,EAAOI,OAAQ,EACfvH,SAAS+D,KAAKiF,YAAY7B,GAC1BzM,IACO,CAAC,KAlDNA,IACO,CAAC,cAyDlBwQ,EAAQxM,UAAUqP,oBAAsB,WACtC,OAAO3T,EAAUgC,UAAM,OAAQ,GAAQ,WACrC,OAAOd,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,MAAO,CAAC,EAENO,KAAKiR,gBAET,KAAK,EAGH,OAFAtC,EAAGjP,OAEI,CAAC,WAQlBoP,EAAQxM,UAAUsP,eAAiB,WACjC,OAAO5T,EAAUgC,UAAM,OAAQ,GAAQ,WACrC,OAAOd,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EAEH,OADAO,KAAK2P,yBAA0B,EACxB,CAAC,EAEN3P,KAAK4Q,mBAET,KAAK,EAGH,OAFAjC,EAAGjP,OAEI,CAAC,WAQlBoP,EAAQxM,UAAUsO,gBAAkB,WAClC,OAAO5S,EAAUgC,UAAM,OAAQ,GAAQ,WACrC,OAAOd,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,OAAMO,KAAKqP,WAAa,IAAgCwC,OAAgB,CAAC,EAEvE,GACK,CAAC,GAtiBD9O,EAwiBK,sBAxiBDgB,EAwiBwB,0EAviBtC,IAAI1F,SAAQ,SAAUC,EAASC,GACpC,GAAKqF,SAKL,GAAIA,SAASkO,eAAe/O,GAC1BzE,EAAQ,2BADV,CAKA,IAAIyT,EAAOnO,SAAS+I,cAAc,QAClCoF,EAAKhP,GAAKA,EACVgP,EAAK5E,aAAa,MAAO,cACzB4E,EAAK5E,aAAa,OAAQpJ,GAC1BgO,EAAKpH,iBAAiB,QAAQ,WAC5B,OAAOrM,EAAQ,kBAEjByT,EAAKpH,iBAAiB,SAAS,WAC7B,OAAOpM,EAAO,yBAEhBwT,EAAKpH,iBAAiB,SAAS,WAC7B,OAAOpM,EAAO,2BAEhBqF,SAAS+D,KAAKiF,YAAYmF,QAtBxBzT,SAuiBI,KAAK,EACHqQ,EAAGjP,OAEHiP,EAAGlP,MAAQ,EAEb,KAAK,EACH,MAAO,CAAC,GAhjBpB,IAAmBsD,EAAIgB,SAwjBrB+K,EAAQxM,UAAU0P,KAAO,WACvB,IAAIhD,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,GAC3B,OAAON,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,OAAO9P,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,OAAKO,KAAKiG,UAA8B,KAAlBjG,KAAKiG,SAOH,eAAlBjG,KAAKiG,SAAmC,CAAC,EAE7C,GACK,CAAC,EAENjG,KAAKiR,iBAXL3S,IACO,CAAC,IAYZ,KAAK,EAIH,OAHAqQ,EAAGjP,OAEHpB,IACO,CAAC,GAIV,KAAK,EACH,OAAKsF,SAASyI,cAAc,6BAA+BrM,KAAKiG,SAAW,MAGpE,CAAC,EAENjG,KAAKiR,gBALkF,CAAC,EAExF,GAKJ,KAAK,EAGH,OAFAtC,EAAGjP,OAEI,CAAC,EAEN,GAEJ,KAAK,EACH,MAAO,CAAC,EAENM,KAAKgR,gBAET,KAAK,EACHrC,EAAGjP,OAEHiP,EAAGlP,MAAQ,EAEb,KAAK,EAEH,OADAnB,IACO,CAAC,cASpBwQ,EAAQxM,UAAUkO,iBAAmB,WACnC,IAAInK,EAAOrG,KAAKiS,GAAG5F,cAAc,iBAEjC,OAAIhG,EACKrG,KAAKkS,UAAU7L,EAAK8L,UAAY9L,EAAK8L,UAAUC,OAAS/L,EAAK8L,WAE7D,IAAI9T,SAAQ,SAAUC,GAC3BA,QAKNwQ,EAAQxM,UAAUgP,UAAY,WAC5B,OAAOtT,EAAUgC,UAAM,OAAQ,GAAQ,WACrC,IAAIqS,EAA4B5M,EAChC,OAAOvG,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,IAAKO,KAAK+D,IACR,MAAO,CAAC,GAKV4K,EAAGlP,MAAQ,EAEb,KAAK,EAGH,OAFAkP,EAAGhP,KAAKa,KAAK,CAAC,EAAG,EAAE,CAAE,IAEd,CAAC,EAEN8R,MAAMtS,KAAK+D,MAEf,KAAK,EAEH,MAAO,CAAC,EADG4K,EAAGjP,OAGH2H,QAEb,KAAK,EAEH,OADAgL,EAAc1D,EAAGjP,OACV,CAAC,EAENM,KAAKkS,UAAUG,IAEnB,KAAK,EAGH,OAFA1D,EAAGjP,OAEI,CAAC,EAEN,GAEJ,KAAK,EAQH,OAPMiP,EAAGjP,QACT+F,EAAYzF,KAAKiS,GAAGM,WAAWlG,cAAc,yCAE5BgG,IACf5M,EAAU+M,SAAS,GAAG/L,UAAY4L,GAG7B,CAAC,EAEN,GAEJ,KAAK,EACH,MAAO,CAAC,WAQlBvD,EAAQxM,UAAU4P,UAAY,SAAU7L,GACtC,IAAI2I,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,EAASC,GACpC,OAAOP,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,IAAIvJ,EAAWgN,EAAcC,EAEzB1D,EAAQhP,KAEZ,OAAOd,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EAGH,GAFAgG,EAAYzF,KAAKiS,GAAGM,WAAWlG,cAAc,wCAExChG,QAAiBmH,IAATnH,GAA+B,KAATA,EAEjC,OADA/H,IACO,CAAC,GAKV,IAAKmH,EAAW,MAAO,CAAC,EAEtB,GACFkJ,EAAGlP,MAAQ,EAEb,KAAK,EAwBH,OAvBAkP,EAAGhP,KAAKa,KAAK,CAAC,EAAG,EAAE,CAAE,IAGrBiF,EAAU+M,SAAS,GAAG/L,UAAY,GAClCgM,EAAQjK,OAAO,YACPnC,EAAKsM,MAAMF,GACbvP,SAAQ,SAAU0P,EAAGC,EAAKlJ,GAE1BkJ,IAAQlJ,EAAMpJ,OAAS,GACzByO,EAAM8D,wBAAwBrN,GAGhC,IAAIsN,EAAMnP,SAAS+I,cAAc,OAE7BqC,EAAMI,aACR2D,EAAIC,UAAUjJ,IAAI,qCAGpB,IAAI3C,EAAYtG,EAAMsG,UAAUwL,EAAG9R,EAAMsD,UAAU4K,EAAM/I,UAAW+I,EAAM/I,UAE1E8M,EAAItM,UAAYW,GAA2B,KAAdA,EAAmBA,EAAY,IAC5D3B,EAAU+M,SAAS,GAAG5F,YAAYmG,MAE7B,CAAC,EAEN/S,KAAKiT,cAET,KAAK,EAIH,OAHAtE,EAAGjP,OAEHpB,IACO,CAAC,EAEN,GAEJ,KAAK,EAGH,OAFAoU,EAAQ/D,EAAGjP,OACXnB,EAAOmU,GACA,CAAC,EAEN,GAEJ,KAAK,EACH,MAAO,CAAC,cASpB5D,EAAQxM,UAAUwQ,wBAA0B,SAAUrN,GACpD,IAAIuJ,EAAQhP,KAEZ,GAAIW,QAAU,mBAAoBA,OAAQ,CAExC,IAAIuS,EAAa,IAAIC,gBAAe,SAAUC,GAC5C,OAAOpV,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,OAAO9P,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,MAAO,CAAC,EAENO,KAAKqT,gBAET,KAAK,EAIH,OAHA1E,EAAGjP,OAEHwT,EAAWI,aACJ,CAAC,aAOlBJ,EAAWK,QAAQ9N,QAGnB4F,YAAW,WACT,OAAOrN,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,OAAO9P,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,MAAO,CAAC,EAENO,KAAKqT,gBAET,KAAK,EAGH,OAFA1E,EAAGjP,OAEI,CAAC,YAMf,MAIPoP,EAAQxM,UAAU2Q,WAAa,WAC7B,IAAIjE,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,GAC3B,IAAIwH,EAAWkJ,EAAMiD,GAAGM,WAAWxM,iBAAiB,gBAEpD,GAAID,EAAU,CACZ,IACI0N,EADgBxR,MAAMiH,KAAKnD,GACH2N,QAAO,SAAUpQ,GAC3C,OAAO2L,EAAM0E,cAAcrQ,EAAQoD,cAGjC+M,GACFA,EAAQtQ,SAAQ,SAAU+L,GACxBA,EAAO+D,UAAUjJ,IAAI,gCAEjBiF,EAAMG,YACRF,EAAO+D,UAAUjJ,IAAI,0CAM7BzL,QAIJwQ,EAAQxM,UAAUoR,cAAgB,SAAUC,GAC1C,OAAOA,GAAQ3T,KAAKiP,SAAqC,IAA3B0E,EAAKC,QAAQ,UAAmBD,EAAKhB,MAAM,KAAKjI,KAAK,IAAIkJ,QAAQ5T,KAAKiP,OAAO0D,MAAM,KAAKjI,KAAK,MAAQ,GAGrIoE,EAAQxM,UAAU+Q,aAAe,WAC/B,IAAIrE,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,GAC3B,OAAON,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,IAAI6E,EAAQC,EAAehO,EAAUiO,EAAYC,EAAiBC,EAClE,OAAO/U,EAAYc,MAAM,SAAU2O,GACjC,OAAQA,EAAGlP,OACT,KAAK,EACH,OAAMO,KAAKkU,gBAAkBlU,KAAKkU,eAAe3T,OAAS,EAGnD,CAAC,EAENP,KAAKmU,uBAL8D,CAAC,EAEpE,GAKJ,KAAK,GACHN,EAASlF,EAAGjP,SAEEmU,EAAOtT,OAAS,IAC5BuT,EAAgB9T,KAAKiS,GAAGM,WAAWlG,cAAc,UAE5ByH,EAAcM,kBACjCtO,EAAW9D,MAAMM,UAAUE,MAAMnC,KAAKyT,EAAcO,YACpDN,EAAa,EACbC,GAAmB,EACnBC,GAAkB,EAClBnO,EAAS5C,SAAQ,SAAUG,GACzB,IAAIiR,EAEJ,GAAyB,UAArBjR,EAAQ+C,SAAsB,CAChC,IAAImO,EAAO3Q,SAAS+I,cAAc,QAE9BtJ,EAAQmR,uBACVnR,EAAQmR,uBAAuBC,sBAAsB,WAAYF,GAEjElR,EAAQ8C,WAAWuO,QAAQH,GAG7BA,EAAK3H,YAAYvJ,GACjBiR,EAAcC,OAEdD,EAAcjR,EAIhB0Q,EAAaO,EAAYK,UAAYX,EAAkBD,EAAa,EAAIA,EACxEC,EAAkBM,EAAYK,UAE9BV,GAAqC,IAApBA,GAAyBA,EAAiBK,EAAYM,aAAeN,EAAYM,aAAeX,EACjH,IAAIY,EAAqBP,EAAYM,aAAeX,EAAiBF,EAAa,EAAIA,EAElFF,EAAOD,QAAQiB,IAAuB,GACxCP,EAAYtB,UAAUjJ,IAAI,kCAMlC4E,EAAGlP,MAAQ,EAEb,KAAK,EAEH,OADAnB,IACO,CAAC,cASpBwQ,EAAQxM,UAAU6R,oBAAsB,WACtC,IAAInF,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,GAC3B,IAAIwW,EAAU,GAEVC,EAAO/F,EAAMkF,eAAevB,MAAM,KAElCoC,GAAQA,EAAKxU,OAAS,GACxBwU,EAAK7R,SAAQ,SAAU8R,GACrB,IAAI9L,EAAQ8L,EAAIrC,MAAM,KAEtB,GAAIzJ,GAASA,EAAM3I,QAAU,EAI3B,IAHA,IAAI0U,EAAQC,SAAShM,EAAM,GAAI,GAC3BiM,EAAMD,SAAShM,EAAM,GAAI,GAEpB/F,EAAI8R,EAAO9R,GAAKgS,EAAKhS,IAC5B2R,EAAQtU,KAAK2C,MAMrB7E,EAAQwW,OAIZhG,EAAQxM,UAAU8S,eAAiB,SAAUC,GAC3C,IAAIrG,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,GAC3B,OAAON,EAAUgR,OAAO,OAAQ,GAAQ,WACtC,IAAIlJ,EAAUwP,EAAerG,EAAQsG,EAEjCvG,EAAQhP,KAEZ,OAAOd,EAAYc,MAAM,SAAU2O,GAkCjC,OAjCA7I,EAAW9F,KAAKiS,GAAGM,WAAWxM,iBAAiB,uCAG7CuP,EAAgBD,EAAQrT,MAAMiH,KAAKnD,GAAY9D,MAAMiH,KAAKnD,GAAU0P,WACpEvG,EAASqG,EAAcG,MAAK,SAAUpS,GACpC,OAAOgS,EAAQhS,EAAQsR,UAAY3F,EAAMU,gBAAkBrM,EAAQsR,UAAY3F,EAAMU,qBAIrF1P,KAAK0P,gBAAkBT,EAAO0F,UAC9BrW,EAAQ,CACNqW,UAAW1F,EAAO0F,UAClBe,YAAa1V,KAAK0V,YAAYzG,EAAO3I,gBAE7B+O,EAaV/W,EAAQ,OAZRiX,EAAcvV,KAAKiS,GAAGM,WAAWlG,cAAc,UAE5BkJ,EAAYI,mBAC7B3V,KAAK0P,gBAAkB,EACvBpR,EAAQ,CACNqW,UAAW,EACXe,aAAa,KAGfpX,EAAQ,OAMZA,EAAQ,MAGH,CAAC,aAQhBwQ,EAAQxM,UAAUsT,SAAW,SAAUC,GACrC,IAAI7G,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,GAC3B,IAAImH,EAAYuJ,EAAMiD,GAAGM,WAAWlG,cAAc,uCAE9C5G,GACFA,EAAUmJ,MAAMkH,YAAY,+BAAgCD,EAAO,MAAQ,KAG7EvX,QAIJwQ,EAAQxM,UAAUoT,YAAc,SAAU/B,GACxC,OAAOA,GAAQ3T,KAAKkP,aAAyC,IAA3ByE,EAAKC,QAAQ,UAAmBD,EAAKhB,MAAM,KAAKjI,KAAK,IAAIkJ,QAAQ5T,KAAKkP,WAAWyD,MAAM,KAAKjI,KAAK,MAAQ,GAG7IoE,EAAQxM,UAAUyT,KAAO,WACvB,IAAI/G,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,GAC3B,GAAK0Q,EAAMO,SAAX,CAKAP,EAAMS,SAAU,EAEhB,IAAIuG,EAAchH,EAAMiD,GAAG5F,cAAc,iBAErC2J,GACF3K,YAAW,WACT2K,EAAY7I,aAAa,kBAAmB,QAC5C6I,EAAYrL,iBAAiB,OAAQqE,EAAMsB,UAAW,CACpD2F,MAAM,IAERD,EAAYrL,iBAAiB,UAAWqE,EAAMY,cAC9CoG,EAAYE,UACX,KAGL5X,SAnBEA,QAuBNwQ,EAAQxM,UAAU2N,aAAe,WAC/B,OAAO,IAAI5R,SAAQ,SAAUC,GAC3B,IAAI6X,EAAoB,KAEpBxV,QAAUA,OAAOsP,aACnBkG,EAAoBxV,OAAOsP,eAClBrM,UAAYA,SAASqM,aAC9BkG,EAAoBvS,SAASqM,eACpBrM,UAAYA,SAASkM,YAC9BqG,EAAoBvS,SAASkM,UAAUsG,cAAc/O,MAGvD/I,EAAQ6X,OAIZrH,EAAQxM,UAAUiO,YAAc,WAC9B,IAAIvB,EAAQhP,KAEZ,OAAO,IAAI3B,SAAQ,SAAUC,GAC3B0Q,EAAMS,SAAU,EAEhB,IAAIuG,EAAchH,EAAMiD,GAAG5F,cAAc,iBAErC2J,IACFA,EAAYK,gBAAgB,mBAExBL,EAAYvP,YACduP,EAAYvP,UAAYuP,EAAYvP,UAAU2L,QAGhDpD,EAAM0B,cAAcc,KAAKxC,EAAMiD,KAGjC3T,QAIJwQ,EAAQxM,UAAUgU,OAAS,WACzB,IAAItH,EAAQhP,KAERuW,EAAY,CACd,6BAA8BvW,KAAKyP,QACnC,+BAAgCzP,KAAKqP,WAAa,IAAgCC,OAClF,+BAAgCtP,KAAKqP,WAAa,IAAgCwC,QAOpF,OAJI7R,KAAKqP,WAAa,IAAgCC,SACpDiH,EAAU,+BAAiCvW,KAAKuN,QAAS,GAGpD,YAAE,IAAM,CACb,MAASgJ,GACRvW,KAAKwW,eAAgBxW,KAAKyW,eAAgB,YAAE,MAAO,CACpD,MAAS,kCACTC,YAAa,WACX,OAAO1H,EAAM+G,QAEfY,aAAc,WACZ,OAAO3H,EAAM+G,SAEd,YAAE,OAAQ,MAAO,YAAE,OAAQ,CAC5B/L,KAAM,YAIV8E,EAAQxM,UAAUkU,aAAe,WAC/B,GAAIxW,KAAKqP,WAAa,IAAgCC,OAItD,MAAO,CAAC,YAAEZ,EAAkB,CAC1BE,MAAO5O,KAAKmR,aACV,YAAE,MAAO,CACX,MAAS,UACRnR,KAAK4W,mBAAmB,OAAQ5W,KAAK4W,mBAAmB,UAAW5W,KAAK4W,mBAAmB,YAGhG9H,EAAQxM,UAAUsU,mBAAqB,SAAUC,GAC/C,OAAO,YAAE,MAAO,CACd,MAASA,KAIb/H,EAAQxM,UAAUmU,aAAe,WAC/B,GAAIzW,KAAKqP,WAAa,IAAgCwC,OAItD,OAAO,YAAE,MAAO,CACd,MAAS,UACR7R,KAAK8W,mBAAmB,SAAU9W,KAAK8W,mBAAmB,YAAa9W,KAAK8W,mBAAmB,YAAa,YAAE,IAAK,KAAM,YAAE,OAAQ,CACpI9M,KAAM,YAIV8E,EAAQxM,UAAUwU,mBAAqB,SAAUC,GAC/C,IAAIC,EAAkB,UAATD,EAAmB,WAAsB,aAATA,EAAsB,UAAY,UAC/E,OAAO,YAAE,MAAO,CACd,MAASA,EACTtQ,UAAWuQ,KAIf3U,OAAOM,eAAemM,EAAQxM,UAAW,KAAM,CAC7C2U,IAAK,WACH,OAAO,YAAWjX,OAEpBkX,YAAY,EACZC,cAAc,IAEhB9U,OAAOM,eAAemM,EAAS,WAAY,CACzCmI,IAAK,WACH,MAAO,CACL,MAAS,CAAC,aACV,SAAY,CAAC,gBACb,YAAe,CAAC,uBAChB,SAAY,CAAC,oBAGjBC,YAAY,EACZC,cAAc,IAETrI,EA7hCT,GAgiCAD,EAAwBD,MApiCS,8xa,0DC52CjC,EAAQ,OAAR,CAA0B,UAAU,SAAUwI,GAC5C,OAAO,SAAgBpN,GACrB,OAAOoN,EAAWpX,KAAM,IAAK,OAAQgK,Q,uBCJzC,IAAIqN,EAAU,EAAQ,QAClBC,EAAQ,EAAQ,QAChBC,EAAU,EAAQ,QAClBC,EAAO,KAEPJ,EAAa,SAAUrL,EAAQzB,EAAKmN,EAAWhZ,GACjD,IAAIiZ,EAAIC,OAAOJ,EAAQxL,IACnB6L,EAAK,IAAMtN,EAEf,MADkB,KAAdmN,IAAkBG,GAAM,IAAMH,EAAY,KAAOE,OAAOlZ,GAAO0D,QAAQqV,EAAM,UAAY,KACtFI,EAAK,IAAMF,EAAI,KAAOpN,EAAM,KAErCtJ,EAAOC,QAAU,SAAU4W,EAAM7T,GAC/B,IAAI8T,EAAI,GACRA,EAAED,GAAQ7T,EAAKoT,GACfC,EAAQA,EAAQlZ,EAAIkZ,EAAQU,EAAIT,GAAM,WACpC,IAAIhU,EAAO,GAAGuU,GAAM,KACpB,OAAOvU,IAASA,EAAKI,eAAiBJ,EAAKqP,MAAM,KAAKpS,OAAS,KAC7D,SAAUuX","file":"18-dbcdfdf839f680eefc31.js","sourcesContent":["var DeckdeckgoHighlightCodeTerminal;\n\n(function (DeckdeckgoHighlightCodeTerminal) {\n DeckdeckgoHighlightCodeTerminal[\"CARBON\"] = \"carbon\";\n DeckdeckgoHighlightCodeTerminal[\"UBUNTU\"] = \"ubuntu\";\n DeckdeckgoHighlightCodeTerminal[\"NONE\"] = \"none\";\n})(DeckdeckgoHighlightCodeTerminal || (DeckdeckgoHighlightCodeTerminal = {}));\n\nvar DeckdeckgoHighlightCodeCarbonTheme;\n\n(function (DeckdeckgoHighlightCodeCarbonTheme) {\n DeckdeckgoHighlightCodeCarbonTheme[\"3024-NIGHT\"] = \"3024-night\";\n DeckdeckgoHighlightCodeCarbonTheme[\"A11Y-DARK\"] = \"a11y-dark\";\n DeckdeckgoHighlightCodeCarbonTheme[\"BLACKBOARD\"] = \"blackboard\";\n DeckdeckgoHighlightCodeCarbonTheme[\"BASE16-DARK\"] = \"base16-dark\";\n DeckdeckgoHighlightCodeCarbonTheme[\"BASE16-LIGHT\"] = \"base16-light\";\n DeckdeckgoHighlightCodeCarbonTheme[\"COBALT\"] = \"cobalt\";\n DeckdeckgoHighlightCodeCarbonTheme[\"DRACULA\"] = \"dracula\";\n DeckdeckgoHighlightCodeCarbonTheme[\"DUOTONE\"] = \"duotone\";\n DeckdeckgoHighlightCodeCarbonTheme[\"HOPSCOTCH\"] = \"hopscotch\";\n DeckdeckgoHighlightCodeCarbonTheme[\"LUCARIO\"] = \"lucario\";\n DeckdeckgoHighlightCodeCarbonTheme[\"MATERIAL\"] = \"material\";\n DeckdeckgoHighlightCodeCarbonTheme[\"MONOKAI\"] = \"monokai\";\n DeckdeckgoHighlightCodeCarbonTheme[\"NIGHT-OWL\"] = \"night-owl\";\n DeckdeckgoHighlightCodeCarbonTheme[\"NORD\"] = \"nord\";\n DeckdeckgoHighlightCodeCarbonTheme[\"OCEANIC-NEXT\"] = \"oceanic-next\";\n DeckdeckgoHighlightCodeCarbonTheme[\"ONE-LIGHT\"] = \"one-light\";\n DeckdeckgoHighlightCodeCarbonTheme[\"ONE-DARK\"] = \"one-dark\";\n DeckdeckgoHighlightCodeCarbonTheme[\"PANDA\"] = \"panda\";\n DeckdeckgoHighlightCodeCarbonTheme[\"PARAISO\"] = \"paraiso\";\n DeckdeckgoHighlightCodeCarbonTheme[\"SETI\"] = \"seti\";\n DeckdeckgoHighlightCodeCarbonTheme[\"SHADES-OF-PURPLE\"] = \"shades-of-purple\";\n DeckdeckgoHighlightCodeCarbonTheme[\"SOLARIZED-DARK\"] = \"solarized-dark\";\n DeckdeckgoHighlightCodeCarbonTheme[\"SOLARIZED-LIGHT\"] = \"solarized-light\";\n DeckdeckgoHighlightCodeCarbonTheme[\"SYNTHWAVE\"] = \"synthwave\";\n DeckdeckgoHighlightCodeCarbonTheme[\"TWILIGHT\"] = \"twilight\";\n DeckdeckgoHighlightCodeCarbonTheme[\"VERMINAL\"] = \"verminal\";\n DeckdeckgoHighlightCodeCarbonTheme[\"VSCODE\"] = \"vscode\";\n DeckdeckgoHighlightCodeCarbonTheme[\"YETI\"] = \"yeti\";\n DeckdeckgoHighlightCodeCarbonTheme[\"ZENBURN\"] = \"zenburn\";\n})(DeckdeckgoHighlightCodeCarbonTheme || (DeckdeckgoHighlightCodeCarbonTheme = {}));\n\nexport { DeckdeckgoHighlightCodeTerminal as D, DeckdeckgoHighlightCodeCarbonTheme as a };","import \"core-js/modules/es6.array.find\";\nimport \"core-js/modules/es6.array.index-of\";\nimport \"core-js/modules/es6.array.filter\";\nimport \"core-js/modules/es6.string.iterator\";\nimport \"core-js/modules/es6.array.from\";\nimport \"core-js/modules/es6.regexp.split\";\nimport \"core-js/modules/es6.string.trim\";\nimport \"core-js/modules/es6.string.anchor\";\nimport \"core-js/modules/es6.regexp.constructor\";\nimport \"core-js/modules/es6.regexp.match\";\nimport \"core-js/modules/es6.array.for-each\";\nimport \"core-js/modules/es6.object.define-property\";\nimport \"core-js/modules/es6.regexp.to-string\";\nimport \"core-js/modules/es6.date.to-string\";\nimport \"core-js/modules/es6.regexp.replace\";\nimport \"core-js/modules/es6.array.map\";\nimport \"core-js/modules/es6.array.is-array\";\nimport \"core-js/modules/es7.symbol.async-iterator\";\nimport \"core-js/modules/es6.symbol\";\nimport \"core-js/modules/es6.promise\";\nimport \"core-js/modules/es6.object.to-string\";\n\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\n\nvar __generator = this && this.__generator || function (thisArg, body) {\n var _ = {\n label: 0,\n sent: function sent() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n },\n f,\n y,\n t,\n g;\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function () {\n return this;\n }), g;\n\n function verb(n) {\n return function (v) {\n return step([n, v]);\n };\n }\n\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n\n while (_) {\n try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n\n switch (op[0]) {\n case 0:\n case 1:\n t = op;\n break;\n\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n\n case 5:\n _.label++;\n y = op[1];\n op = [0];\n continue;\n\n case 7:\n op = _.ops.pop();\n\n _.trys.pop();\n\n continue;\n\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n\n if (t && _.label < t[2]) {\n _.label = t[2];\n\n _.ops.push(op);\n\n break;\n }\n\n if (t[2]) _.ops.pop();\n\n _.trys.pop();\n\n continue;\n }\n\n op = body.call(thisArg, _);\n } catch (e) {\n op = [6, e];\n y = 0;\n } finally {\n f = t = 0;\n }\n }\n\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n};\n\nimport { h, r as registerInstance, c as createEvent, H as Host, g as getElement } from './index-861c58cb.js';\nimport { a as DeckdeckgoHighlightCodeCarbonTheme, D as DeckdeckgoHighlightCodeTerminal } from './deckdeckgo-highlight-code-carbon-theme-024790ad.js';\nvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction createCommonjsModule(fn, module) {\n return module = {\n exports: {}\n }, fn(module, module.exports), module.exports;\n}\n\nvar prism = createCommonjsModule(function (module) {\n /* **********************************************\n Begin prism-core.js\n ********************************************** */\n var _self = typeof window !== 'undefined' ? window // if in browser\n : typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope ? self // if in worker\n : {} // if in node js\n ;\n /**\n * Prism: Lightweight, robust, elegant syntax highlighting\n * MIT license http://www.opensource.org/licenses/mit-license.php/\n * @author Lea Verou http://lea.verou.me\n */\n\n\n var Prism = function (_self) {\n // Private helper vars\n var lang = /\\blang(?:uage)?-([\\w-]+)\\b/i;\n var uniqueId = 0;\n var _ = {\n manual: _self.Prism && _self.Prism.manual,\n disableWorkerMessageHandler: _self.Prism && _self.Prism.disableWorkerMessageHandler,\n util: {\n encode: function encode(tokens) {\n if (tokens instanceof Token) {\n return new Token(tokens.type, encode(tokens.content), tokens.alias);\n } else if (Array.isArray(tokens)) {\n return tokens.map(encode);\n } else {\n return tokens.replace(/&/g, '&').replace(/</g, '<').replace(/\\u00a0/g, ' ');\n }\n },\n type: function type(o) {\n return Object.prototype.toString.call(o).slice(8, -1);\n },\n objId: function objId(obj) {\n if (!obj['__id']) {\n Object.defineProperty(obj, '__id', {\n value: ++uniqueId\n });\n }\n\n return obj['__id'];\n },\n // Deep clone a language definition (e.g. to extend it)\n clone: function deepClone(o, visited) {\n var clone,\n id,\n type = _.util.type(o);\n\n visited = visited || {};\n\n switch (type) {\n case 'Object':\n id = _.util.objId(o);\n\n if (visited[id]) {\n return visited[id];\n }\n\n clone = {};\n visited[id] = clone;\n\n for (var key in o) {\n if (o.hasOwnProperty(key)) {\n clone[key] = deepClone(o[key], visited);\n }\n }\n\n return clone;\n\n case 'Array':\n id = _.util.objId(o);\n\n if (visited[id]) {\n return visited[id];\n }\n\n clone = [];\n visited[id] = clone;\n o.forEach(function (v, i) {\n clone[i] = deepClone(v, visited);\n });\n return clone;\n\n default:\n return o;\n }\n },\n\n /**\n * Returns the Prism language of the given element set by a `language-xxxx` or `lang-xxxx` class.\n *\n * If no language is set for the element or the element is `null` or `undefined`, `none` will be returned.\n *\n * @param {Element} element\n * @returns {string}\n */\n getLanguage: function getLanguage(element) {\n while (element && !lang.test(element.className)) {\n element = element.parentElement;\n }\n\n if (element) {\n return (element.className.match(lang) || [, 'none'])[1].toLowerCase();\n }\n\n return 'none';\n },\n\n /**\n * Returns the script element that is currently executing.\n *\n * This does __not__ work for line script element.\n *\n * @returns {HTMLScriptElement | null}\n */\n currentScript: function currentScript() {\n if (typeof document === 'undefined') {\n return null;\n }\n\n if ('currentScript' in document) {\n return document.currentScript;\n } // IE11 workaround\n // we'll get the src of the current script by parsing IE11's error stack trace\n // this will not work for inline scripts\n\n\n try {\n throw new Error();\n } catch (err) {\n // Get file src url from stack. Specifically works with the format of stack traces in IE.\n // A stack will look like this:\n //\n // Error\n // at _.util.currentScript (http://localhost/components/prism-core.js:119:5)\n // at Global code (http://localhost/components/prism-core.js:606:1)\n var src = (/at [^(\\r\\n]*\\((.*):.+:.+\\)$/i.exec(err.stack) || [])[1];\n\n if (src) {\n var scripts = document.getElementsByTagName('script');\n\n for (var i in scripts) {\n if (scripts[i].src == src) {\n return scripts[i];\n }\n }\n }\n\n return null;\n }\n }\n },\n languages: {\n extend: function extend(id, redef) {\n var lang = _.util.clone(_.languages[id]);\n\n for (var key in redef) {\n lang[key] = redef[key];\n }\n\n return lang;\n },\n\n /**\n * Insert a token before another token in a language literal\n * As this needs to recreate the object (we cannot actually insert before keys in object literals),\n * we cannot just provide an object, we need an object and a key.\n * @param inside The key (or language id) of the parent\n * @param before The key to insert before.\n * @param insert Object with the key/value pairs to insert\n * @param root The object that contains `inside`. If equal to Prism.languages, it can be omitted.\n */\n insertBefore: function insertBefore(inside, before, insert, root) {\n root = root || _.languages;\n var grammar = root[inside];\n var ret = {};\n\n for (var token in grammar) {\n if (grammar.hasOwnProperty(token)) {\n if (token == before) {\n for (var newToken in insert) {\n if (insert.hasOwnProperty(newToken)) {\n ret[newToken] = insert[newToken];\n }\n }\n } // Do not insert token which also occur in insert. See #1525\n\n\n if (!insert.hasOwnProperty(token)) {\n ret[token] = grammar[token];\n }\n }\n }\n\n var old = root[inside];\n root[inside] = ret; // Update references in other language definitions\n\n _.languages.DFS(_.languages, function (key, value) {\n if (value === old && key != inside) {\n this[key] = ret;\n }\n });\n\n return ret;\n },\n // Traverse a language definition with Depth First Search\n DFS: function DFS(o, callback, type, visited) {\n visited = visited || {};\n var objId = _.util.objId;\n\n for (var i in o) {\n if (o.hasOwnProperty(i)) {\n callback.call(o, i, o[i], type || i);\n\n var property = o[i],\n propertyType = _.util.type(property);\n\n if (propertyType === 'Object' && !visited[objId(property)]) {\n visited[objId(property)] = true;\n DFS(property, callback, null, visited);\n } else if (propertyType === 'Array' && !visited[objId(property)]) {\n visited[objId(property)] = true;\n DFS(property, callback, i, visited);\n }\n }\n }\n }\n },\n plugins: {},\n highlightAll: function highlightAll(async, callback) {\n _.highlightAllUnder(document, async, callback);\n },\n highlightAllUnder: function highlightAllUnder(container, async, callback) {\n var env = {\n callback: callback,\n container: container,\n selector: 'code[class*=\"language-\"], [class*=\"language-\"] code, code[class*=\"lang-\"], [class*=\"lang-\"] code'\n };\n\n _.hooks.run('before-highlightall', env);\n\n env.elements = Array.prototype.slice.apply(env.container.querySelectorAll(env.selector));\n\n _.hooks.run('before-all-elements-highlight', env);\n\n for (var i = 0, element; element = env.elements[i++];) {\n _.highlightElement(element, async === true, env.callback);\n }\n },\n highlightElement: function highlightElement(element, async, callback) {\n // Find language\n var language = _.util.getLanguage(element);\n\n var grammar = _.languages[language]; // Set language on the element, if not present\n\n element.className = element.className.replace(lang, '').replace(/\\s+/g, ' ') + ' language-' + language; // Set language on the parent, for styling\n\n var parent = element.parentNode;\n\n if (parent && parent.nodeName.toLowerCase() === 'pre') {\n parent.className = parent.className.replace(lang, '').replace(/\\s+/g, ' ') + ' language-' + language;\n }\n\n var code = element.textContent;\n var env = {\n element: element,\n language: language,\n grammar: grammar,\n code: code\n };\n\n function insertHighlightedCode(highlightedCode) {\n env.highlightedCode = highlightedCode;\n\n _.hooks.run('before-insert', env);\n\n env.element.innerHTML = env.highlightedCode;\n\n _.hooks.run('after-highlight', env);\n\n _.hooks.run('complete', env);\n\n callback && callback.call(env.element);\n }\n\n _.hooks.run('before-sanity-check', env);\n\n if (!env.code) {\n _.hooks.run('complete', env);\n\n callback && callback.call(env.element);\n return;\n }\n\n _.hooks.run('before-highlight', env);\n\n if (!env.grammar) {\n insertHighlightedCode(_.util.encode(env.code));\n return;\n }\n\n if (async && _self.Worker) {\n var worker = new Worker(_.filename);\n\n worker.onmessage = function (evt) {\n insertHighlightedCode(evt.data);\n };\n\n worker.postMessage(JSON.stringify({\n language: env.language,\n code: env.code,\n immediateClose: true\n }));\n } else {\n insertHighlightedCode(_.highlight(env.code, env.grammar, env.language));\n }\n },\n highlight: function highlight(text, grammar, language) {\n var env = {\n code: text,\n grammar: grammar,\n language: language\n };\n\n _.hooks.run('before-tokenize', env);\n\n env.tokens = _.tokenize(env.code, env.grammar);\n\n _.hooks.run('after-tokenize', env);\n\n return Token.stringify(_.util.encode(env.tokens), env.language);\n },\n tokenize: function tokenize(text, grammar) {\n var rest = grammar.rest;\n\n if (rest) {\n for (var token in rest) {\n grammar[token] = rest[token];\n }\n\n delete grammar.rest;\n }\n\n var tokenList = new LinkedList();\n addAfter(tokenList, tokenList.head, text);\n matchGrammar(text, tokenList, grammar, tokenList.head, 0);\n return toArray(tokenList);\n },\n hooks: {\n all: {},\n add: function add(name, callback) {\n var hooks = _.hooks.all;\n hooks[name] = hooks[name] || [];\n hooks[name].push(callback);\n },\n run: function run(name, env) {\n var callbacks = _.hooks.all[name];\n\n if (!callbacks || !callbacks.length) {\n return;\n }\n\n for (var i = 0, callback; callback = callbacks[i++];) {\n callback(env);\n }\n }\n },\n Token: Token\n };\n _self.Prism = _;\n\n function Token(type, content, alias, matchedStr, greedy) {\n this.type = type;\n this.content = content;\n this.alias = alias; // Copy of the full string this token was created from\n\n this.length = (matchedStr || '').length | 0;\n this.greedy = !!greedy;\n }\n\n Token.stringify = function stringify(o, language) {\n if (typeof o == 'string') {\n return o;\n }\n\n if (Array.isArray(o)) {\n var s = '';\n o.forEach(function (e) {\n s += stringify(e, language);\n });\n return s;\n }\n\n var env = {\n type: o.type,\n content: stringify(o.content, language),\n tag: 'span',\n classes: ['token', o.type],\n attributes: {},\n language: language\n };\n var aliases = o.alias;\n\n if (aliases) {\n if (Array.isArray(aliases)) {\n Array.prototype.push.apply(env.classes, aliases);\n } else {\n env.classes.push(aliases);\n }\n }\n\n _.hooks.run('wrap', env);\n\n var attributes = '';\n\n for (var name in env.attributes) {\n attributes += ' ' + name + '=\"' + (env.attributes[name] || '').replace(/\"/g, '"') + '\"';\n }\n\n return '<' + env.tag + ' class=\"' + env.classes.join(' ') + '\"' + attributes + '>' + env.content + '</' + env.tag + '>';\n };\n /**\n * @param {string} text\n * @param {LinkedList<string | Token>} tokenList\n * @param {any} grammar\n * @param {LinkedListNode<string | Token>} startNode\n * @param {number} startPos\n * @param {boolean} [oneshot=false]\n * @param {string} [target]\n */\n\n\n function matchGrammar(text, tokenList, grammar, startNode, startPos, oneshot, target) {\n for (var token in grammar) {\n if (!grammar.hasOwnProperty(token) || !grammar[token]) {\n continue;\n }\n\n var patterns = grammar[token];\n patterns = Array.isArray(patterns) ? patterns : [patterns];\n\n for (var j = 0; j < patterns.length; ++j) {\n if (target && target == token + ',' + j) {\n return;\n }\n\n var pattern = patterns[j],\n inside = pattern.inside,\n lookbehind = !!pattern.lookbehind,\n greedy = !!pattern.greedy,\n lookbehindLength = 0,\n alias = pattern.alias;\n\n if (greedy && !pattern.pattern.global) {\n // Without the global flag, lastIndex won't work\n var flags = pattern.pattern.toString().match(/[imsuy]*$/)[0];\n pattern.pattern = RegExp(pattern.pattern.source, flags + 'g');\n }\n\n pattern = pattern.pattern || pattern;\n\n for ( // iterate the token list and keep track of the current token/string position\n var currentNode = startNode.next, pos = startPos; currentNode !== tokenList.tail; pos += currentNode.value.length, currentNode = currentNode.next) {\n var str = currentNode.value;\n\n if (tokenList.length > text.length) {\n // Something went terribly wrong, ABORT, ABORT!\n return;\n }\n\n if (str instanceof Token) {\n continue;\n }\n\n var removeCount = 1; // this is the to parameter of removeBetween\n\n if (greedy && currentNode != tokenList.tail.prev) {\n pattern.lastIndex = pos;\n var match = pattern.exec(text);\n\n if (!match) {\n break;\n }\n\n var from = match.index + (lookbehind && match[1] ? match[1].length : 0);\n var to = match.index + match[0].length;\n var p = pos; // find the node that contains the match\n\n p += currentNode.value.length;\n\n while (from >= p) {\n currentNode = currentNode.next;\n p += currentNode.value.length;\n } // adjust pos (and p)\n\n\n p -= currentNode.value.length;\n pos = p; // the current node is a Token, then the match starts inside another Token, which is invalid\n\n if (currentNode.value instanceof Token) {\n continue;\n } // find the last node which is affected by this match\n\n\n for (var k = currentNode; k !== tokenList.tail && (p < to || typeof k.value === 'string' && !k.prev.value.greedy); k = k.next) {\n removeCount++;\n p += k.value.length;\n }\n\n removeCount--; // replace with the new match\n\n str = text.slice(pos, p);\n match.index -= pos;\n } else {\n pattern.lastIndex = 0;\n var match = pattern.exec(str);\n }\n\n if (!match) {\n if (oneshot) {\n break;\n }\n\n continue;\n }\n\n if (lookbehind) {\n lookbehindLength = match[1] ? match[1].length : 0;\n }\n\n var from = match.index + lookbehindLength,\n match = match[0].slice(lookbehindLength),\n to = from + match.length,\n before = str.slice(0, from),\n after = str.slice(to);\n var removeFrom = currentNode.prev;\n\n if (before) {\n removeFrom = addAfter(tokenList, removeFrom, before);\n pos += before.length;\n }\n\n removeRange(tokenList, removeFrom, removeCount);\n var wrapped = new Token(token, inside ? _.tokenize(match, inside) : match, alias, match, greedy);\n currentNode = addAfter(tokenList, removeFrom, wrapped);\n\n if (after) {\n addAfter(tokenList, currentNode, after);\n }\n\n if (removeCount > 1) matchGrammar(text, tokenList, grammar, currentNode.prev, pos, true, token + ',' + j);\n if (oneshot) break;\n }\n }\n }\n }\n /**\n * @typedef LinkedListNode\n * @property {T} value\n * @property {LinkedListNode<T> | null} prev The previous node.\n * @property {LinkedListNode<T> | null} next The next node.\n * @template T\n */\n\n /**\n * @template T\n */\n\n\n function LinkedList() {\n /** @type {LinkedListNode<T>} */\n var head = {\n value: null,\n prev: null,\n next: null\n };\n /** @type {LinkedListNode<T>} */\n\n var tail = {\n value: null,\n prev: head,\n next: null\n };\n head.next = tail;\n /** @type {LinkedListNode<T>} */\n\n this.head = head;\n /** @type {LinkedListNode<T>} */\n\n this.tail = tail;\n this.length = 0;\n }\n /**\n * Adds a new node with the given value to the list.\n * @param {LinkedList<T>} list\n * @param {LinkedListNode<T>} node\n * @param {T} value\n * @returns {LinkedListNode<T>} The added node.\n * @template T\n */\n\n\n function addAfter(list, node, value) {\n // assumes that node != list.tail && values.length >= 0\n var next = node.next;\n var newNode = {\n value: value,\n prev: node,\n next: next\n };\n node.next = newNode;\n next.prev = newNode;\n list.length++;\n return newNode;\n }\n /**\n * Removes `count` nodes after the given node. The given node will not be removed.\n * @param {LinkedList<T>} list\n * @param {LinkedListNode<T>} node\n * @param {number} count\n * @template T\n */\n\n\n function removeRange(list, node, count) {\n var next = node.next;\n\n for (var i = 0; i < count && next !== list.tail; i++) {\n next = next.next;\n }\n\n node.next = next;\n next.prev = node;\n list.length -= i;\n }\n /**\n * @param {LinkedList<T>} list\n * @returns {T[]}\n * @template T\n */\n\n\n function toArray(list) {\n var array = [];\n var node = list.head.next;\n\n while (node !== list.tail) {\n array.push(node.value);\n node = node.next;\n }\n\n return array;\n }\n\n if (!_self.document) {\n if (!_self.addEventListener) {\n // in Node.js\n return _;\n }\n\n if (!_.disableWorkerMessageHandler) {\n // In worker\n _self.addEventListener('message', function (evt) {\n var message = JSON.parse(evt.data),\n lang = message.language,\n code = message.code,\n immediateClose = message.immediateClose;\n\n _self.postMessage(_.highlight(code, _.languages[lang], lang));\n\n if (immediateClose) {\n _self.close();\n }\n }, false);\n }\n\n return _;\n } //Get current script and highlight\n\n\n var script = _.util.currentScript();\n\n if (script) {\n _.filename = script.src;\n\n if (script.hasAttribute('data-manual')) {\n _.manual = true;\n }\n }\n\n function highlightAutomaticallyCallback() {\n if (!_.manual) {\n _.highlightAll();\n }\n }\n\n if (!_.manual) {\n // If the document state is \"loading\", then we'll use DOMContentLoaded.\n // If the document state is \"interactive\" and the prism.js script is deferred, then we'll also use the\n // DOMContentLoaded event because there might be some plugins or languages which have also been deferred and they\n // might take longer one animation frame to execute which can create a race condition where only some plugins have\n // been loaded when Prism.highlightAll() is executed, depending on how fast resources are loaded.\n // See https://github.com/PrismJS/prism/issues/2102\n var readyState = document.readyState;\n\n if (readyState === 'loading' || readyState === 'interactive' && script && script.defer) {\n document.addEventListener('DOMContentLoaded', highlightAutomaticallyCallback);\n } else {\n if (window.requestAnimationFrame) {\n window.requestAnimationFrame(highlightAutomaticallyCallback);\n } else {\n window.setTimeout(highlightAutomaticallyCallback, 16);\n }\n }\n }\n\n return _;\n }(_self);\n\n if (module.exports) {\n module.exports = Prism;\n } // hack for components to work correctly in node.js\n\n\n if (typeof commonjsGlobal !== 'undefined') {\n commonjsGlobal.Prism = Prism;\n }\n /* **********************************************\n Begin prism-markup.js\n ********************************************** */\n\n\n Prism.languages.markup = {\n 'comment': /<!--[\\s\\S]*?-->/,\n 'prolog': /<\\?[\\s\\S]+?\\?>/,\n 'doctype': {\n pattern: /<!DOCTYPE(?:[^>\"'[\\]]|\"[^\"]*\"|'[^']*')+(?:\\[(?:(?!<!--)[^\"'\\]]|\"[^\"]*\"|'[^']*'|<!--[\\s\\S]*?-->)*\\]\\s*)?>/i,\n greedy: true\n },\n 'cdata': /<!\\[CDATA\\[[\\s\\S]*?]]>/i,\n 'tag': {\n pattern: /<\\/?(?!\\d)[^\\s>\\/=$<%]+(?:\\s(?:\\s*[^\\s>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+(?=[\\s>]))|(?=[\\s/>])))+)?\\s*\\/?>/i,\n greedy: true,\n inside: {\n 'tag': {\n pattern: /^<\\/?[^\\s>\\/]+/i,\n inside: {\n 'punctuation': /^<\\/?/,\n 'namespace': /^[^\\s>\\/:]+:/\n }\n },\n 'attr-value': {\n pattern: /=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+)/i,\n inside: {\n 'punctuation': [/^=/, {\n pattern: /^(\\s*)[\"']|[\"']$/,\n lookbehind: true\n }]\n }\n },\n 'punctuation': /\\/?>/,\n 'attr-name': {\n pattern: /[^\\s>\\/]+/,\n inside: {\n 'namespace': /^[^\\s>\\/:]+:/\n }\n }\n }\n },\n 'entity': /&#?[\\da-z]{1,8};/i\n };\n Prism.languages.markup['tag'].inside['attr-value'].inside['entity'] = Prism.languages.markup['entity']; // Plugin to make entity title show the real entity, idea by Roman Komarov\n\n Prism.hooks.add('wrap', function (env) {\n if (env.type === 'entity') {\n env.attributes['title'] = env.content.replace(/&/, '&');\n }\n });\n Object.defineProperty(Prism.languages.markup.tag, 'addInlined', {\n /**\n * Adds an inlined language to markup.\n *\n * An example of an inlined language is CSS with `<style>` tags.\n *\n * @param {string} tagName The name of the tag that contains the inlined language. This name will be treated as\n * case insensitive.\n * @param {string} lang The language key.\n * @example\n * addInlined('style', 'css');\n */\n value: function addInlined(tagName, lang) {\n var includedCdataInside = {};\n includedCdataInside['language-' + lang] = {\n pattern: /(^<!\\[CDATA\\[)[\\s\\S]+?(?=\\]\\]>$)/i,\n lookbehind: true,\n inside: Prism.languages[lang]\n };\n includedCdataInside['cdata'] = /^<!\\[CDATA\\[|\\]\\]>$/i;\n var inside = {\n 'included-cdata': {\n pattern: /<!\\[CDATA\\[[\\s\\S]*?\\]\\]>/i,\n inside: includedCdataInside\n }\n };\n inside['language-' + lang] = {\n pattern: /[\\s\\S]+/,\n inside: Prism.languages[lang]\n };\n var def = {};\n def[tagName] = {\n pattern: RegExp(/(<__[\\s\\S]*?>)(?:<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\s*|[\\s\\S])*?(?=<\\/__>)/.source.replace(/__/g, function () {\n return tagName;\n }), 'i'),\n lookbehind: true,\n greedy: true,\n inside: inside\n };\n Prism.languages.insertBefore('markup', 'cdata', def);\n }\n });\n Prism.languages.xml = Prism.languages.extend('markup', {});\n Prism.languages.html = Prism.languages.markup;\n Prism.languages.mathml = Prism.languages.markup;\n Prism.languages.svg = Prism.languages.markup;\n /* **********************************************\n Begin prism-css.js\n ********************************************** */\n\n (function (Prism) {\n var string = /(\"|')(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/;\n Prism.languages.css = {\n 'comment': /\\/\\*[\\s\\S]*?\\*\\//,\n 'atrule': {\n pattern: /@[\\w-]+[\\s\\S]*?(?:;|(?=\\s*\\{))/,\n inside: {\n 'rule': /^@[\\w-]+/,\n 'selector-function-argument': {\n pattern: /(\\bselector\\s*\\((?!\\s*\\))\\s*)(?:[^()]|\\((?:[^()]|\\([^()]*\\))*\\))+?(?=\\s*\\))/,\n lookbehind: true,\n alias: 'selector'\n } // See rest below\n\n }\n },\n 'url': {\n pattern: RegExp('url\\\\((?:' + string.source + '|[^\\n\\r()]*)\\\\)', 'i'),\n greedy: true,\n inside: {\n 'function': /^url/i,\n 'punctuation': /^\\(|\\)$/\n }\n },\n 'selector': RegExp('[^{}\\\\s](?:[^{};\"\\']|' + string.source + ')*?(?=\\\\s*\\\\{)'),\n 'string': {\n pattern: string,\n greedy: true\n },\n 'property': /[-_a-z\\xA0-\\uFFFF][-\\w\\xA0-\\uFFFF]*(?=\\s*:)/i,\n 'important': /!important\\b/i,\n 'function': /[-a-z0-9]+(?=\\()/i,\n 'punctuation': /[(){};:,]/\n };\n Prism.languages.css['atrule'].inside.rest = Prism.languages.css;\n var markup = Prism.languages.markup;\n\n if (markup) {\n markup.tag.addInlined('style', 'css');\n Prism.languages.insertBefore('inside', 'attr-value', {\n 'style-attr': {\n pattern: /\\s*style=(\"|')(?:\\\\[\\s\\S]|(?!\\1)[^\\\\])*\\1/i,\n inside: {\n 'attr-name': {\n pattern: /^\\s*style/i,\n inside: markup.tag.inside\n },\n 'punctuation': /^\\s*=\\s*['\"]|['\"]\\s*$/,\n 'attr-value': {\n pattern: /.+/i,\n inside: Prism.languages.css\n }\n },\n alias: 'language-css'\n }\n }, markup.tag);\n }\n })(Prism);\n /* **********************************************\n Begin prism-clike.js\n ********************************************** */\n\n\n Prism.languages.clike = {\n 'comment': [{\n pattern: /(^|[^\\\\])\\/\\*[\\s\\S]*?(?:\\*\\/|$)/,\n lookbehind: true\n }, {\n pattern: /(^|[^\\\\:])\\/\\/.*/,\n lookbehind: true,\n greedy: true\n }],\n 'string': {\n pattern: /([\"'])(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/,\n greedy: true\n },\n 'class-name': {\n pattern: /(\\b(?:class|interface|extends|implements|trait|instanceof|new)\\s+|\\bcatch\\s+\\()[\\w.\\\\]+/i,\n lookbehind: true,\n inside: {\n 'punctuation': /[.\\\\]/\n }\n },\n 'keyword': /\\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\\b/,\n 'boolean': /\\b(?:true|false)\\b/,\n 'function': /\\w+(?=\\()/,\n 'number': /\\b0x[\\da-f]+\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:e[+-]?\\d+)?/i,\n 'operator': /[<>]=?|[!=]=?=?|--?|\\+\\+?|&&?|\\|\\|?|[?*/~^%]/,\n 'punctuation': /[{}[\\];(),.:]/\n };\n /* **********************************************\n Begin prism-javascript.js\n ********************************************** */\n\n Prism.languages.javascript = Prism.languages.extend('clike', {\n 'class-name': [Prism.languages.clike['class-name'], {\n pattern: /(^|[^$\\w\\xA0-\\uFFFF])[_$A-Z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\.(?:prototype|constructor))/,\n lookbehind: true\n }],\n 'keyword': [{\n pattern: /((?:^|})\\s*)(?:catch|finally)\\b/,\n lookbehind: true\n }, {\n pattern: /(^|[^.]|\\.\\.\\.\\s*)\\b(?:as|async(?=\\s*(?:function\\b|\\(|[$\\w\\xA0-\\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\\b/,\n lookbehind: true\n }],\n 'number': /\\b(?:(?:0[xX](?:[\\dA-Fa-f](?:_[\\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\\d(?:_\\d)?)+n|NaN|Infinity)\\b|(?:\\b(?:\\d(?:_\\d)?)+\\.?(?:\\d(?:_\\d)?)*|\\B\\.(?:\\d(?:_\\d)?)+)(?:[Ee][+-]?(?:\\d(?:_\\d)?)+)?/,\n // Allow for all non-ASCII characters (See http://stackoverflow.com/a/2008444)\n 'function': /#?[_$a-zA-Z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\s*(?:\\.\\s*(?:apply|bind|call)\\s*)?\\()/,\n 'operator': /--|\\+\\+|\\*\\*=?|=>|&&|\\|\\||[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\\.{3}|\\?[.?]?|[~:]/\n });\n Prism.languages.javascript['class-name'][0].pattern = /(\\b(?:class|interface|extends|implements|instanceof|new)\\s+)[\\w.\\\\]+/;\n Prism.languages.insertBefore('javascript', 'keyword', {\n 'regex': {\n pattern: /((?:^|[^$\\w\\xA0-\\uFFFF.\"'\\])\\s])\\s*)\\/(?:\\[(?:[^\\]\\\\\\r\\n]|\\\\.)*]|\\\\.|[^/\\\\\\[\\r\\n])+\\/[gimyus]{0,6}(?=(?:\\s|\\/\\*[\\s\\S]*?\\*\\/)*(?:$|[\\r\\n,.;:})\\]]|\\/\\/))/,\n lookbehind: true,\n greedy: true\n },\n // This must be declared before keyword because we use \"function\" inside the look-forward\n 'function-variable': {\n pattern: /#?[_$a-zA-Z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\s*[=:]\\s*(?:async\\s*)?(?:\\bfunction\\b|(?:\\((?:[^()]|\\([^()]*\\))*\\)|[_$a-zA-Z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*)\\s*=>))/,\n alias: 'function'\n },\n 'parameter': [{\n pattern: /(function(?:\\s+[_$A-Za-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*)?\\s*\\(\\s*)(?!\\s)(?:[^()]|\\([^()]*\\))+?(?=\\s*\\))/,\n lookbehind: true,\n inside: Prism.languages.javascript\n }, {\n pattern: /[_$a-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\s*=>)/i,\n inside: Prism.languages.javascript\n }, {\n pattern: /(\\(\\s*)(?!\\s)(?:[^()]|\\([^()]*\\))+?(?=\\s*\\)\\s*=>)/,\n lookbehind: true,\n inside: Prism.languages.javascript\n }, {\n pattern: /((?:\\b|\\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\\w\\xA0-\\uFFFF]))(?:[_$A-Za-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*\\s*)\\(\\s*)(?!\\s)(?:[^()]|\\([^()]*\\))+?(?=\\s*\\)\\s*\\{)/,\n lookbehind: true,\n inside: Prism.languages.javascript\n }],\n 'constant': /\\b[A-Z](?:[A-Z_]|\\dx?)*\\b/\n });\n Prism.languages.insertBefore('javascript', 'string', {\n 'template-string': {\n pattern: /`(?:\\\\[\\s\\S]|\\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\\${)[^\\\\`])*`/,\n greedy: true,\n inside: {\n 'template-punctuation': {\n pattern: /^`|`$/,\n alias: 'string'\n },\n 'interpolation': {\n pattern: /((?:^|[^\\\\])(?:\\\\{2})*)\\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,\n lookbehind: true,\n inside: {\n 'interpolation-punctuation': {\n pattern: /^\\${|}$/,\n alias: 'punctuation'\n },\n rest: Prism.languages.javascript\n }\n },\n 'string': /[\\s\\S]+/\n }\n }\n });\n\n if (Prism.languages.markup) {\n Prism.languages.markup.tag.addInlined('script', 'javascript');\n }\n\n Prism.languages.js = Prism.languages.javascript;\n /* **********************************************\n Begin prism-file-highlight.js\n ********************************************** */\n\n (function () {\n if (typeof self === 'undefined' || !self.Prism || !self.document || !document.querySelector) {\n return;\n }\n /**\n * @param {Element} [container=document]\n */\n\n\n self.Prism.fileHighlight = function (container) {\n container = container || document;\n var Extensions = {\n 'js': 'javascript',\n 'py': 'python',\n 'rb': 'ruby',\n 'ps1': 'powershell',\n 'psm1': 'powershell',\n 'sh': 'bash',\n 'bat': 'batch',\n 'h': 'c',\n 'tex': 'latex'\n };\n Array.prototype.slice.call(container.querySelectorAll('pre[data-src]')).forEach(function (pre) {\n // ignore if already loaded\n if (pre.hasAttribute('data-src-loaded')) {\n return;\n } // load current\n\n\n var src = pre.getAttribute('data-src');\n var language,\n parent = pre;\n var lang = /\\blang(?:uage)?-([\\w-]+)\\b/i;\n\n while (parent && !lang.test(parent.className)) {\n parent = parent.parentNode;\n }\n\n if (parent) {\n language = (pre.className.match(lang) || [, ''])[1];\n }\n\n if (!language) {\n var extension = (src.match(/\\.(\\w+)$/) || [, ''])[1];\n language = Extensions[extension] || extension;\n }\n\n var code = document.createElement('code');\n code.className = 'language-' + language;\n pre.textContent = '';\n code.textContent = 'Loading…';\n pre.appendChild(code);\n var xhr = new XMLHttpRequest();\n xhr.open('GET', src, true);\n\n xhr.onreadystatechange = function () {\n if (xhr.readyState == 4) {\n if (xhr.status < 400 && xhr.responseText) {\n code.textContent = xhr.responseText;\n Prism.highlightElement(code); // mark as loaded\n\n pre.setAttribute('data-src-loaded', '');\n } else if (xhr.status >= 400) {\n code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;\n } else {\n code.textContent = '✖ Error: File does not exist or is empty';\n }\n }\n };\n\n xhr.send(null);\n });\n };\n\n document.addEventListener('DOMContentLoaded', function () {\n // execute inside handler, for dropping Event as argument\n self.Prism.fileHighlight();\n });\n })();\n});\n\nfunction injectCSS(id, src) {\n return new Promise(function (resolve, reject) {\n if (!document) {\n resolve();\n return;\n }\n\n if (document.getElementById(id)) {\n resolve('CSS already loaded.');\n return;\n }\n\n var link = document.createElement('link');\n link.id = id;\n link.setAttribute('rel', 'stylesheet');\n link.setAttribute('href', src);\n link.addEventListener('load', function () {\n return resolve('CSS loaded.');\n });\n link.addEventListener('error', function () {\n return reject('Error loading css.');\n });\n link.addEventListener('abort', function () {\n return reject('CSS loading aborted.');\n });\n document.head.appendChild(link);\n });\n}\n\nfunction loadTheme(theme) {\n if (!theme || theme === undefined) {\n return undefined;\n }\n\n switch (theme) {\n case DeckdeckgoHighlightCodeCarbonTheme['3024-NIGHT']:\n return import('./3024-night-8138cc8f.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme['A11Y-DARK']:\n return import('./a11y-dark-533291b3.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme['BASE16-DARK']:\n return import('./base16-dark-12f375e0.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme['BASE16-LIGHT']:\n return import('./base16-light-52469b64.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.BLACKBOARD:\n return import('./blackboard-db1ca116.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.COBALT:\n return import('./cobalt-5d681c9a.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.DUOTONE:\n return import('./duotone-acd564a2.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.HOPSCOTCH:\n return import('./hopscotch-4820dd1a.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.LUCARIO:\n return import('./lucario-59b2ad39.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.MATERIAL:\n return import('./material-8e59c55f.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.MONOKAI:\n return import('./monokai-c3bd40c3.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme['NIGHT-OWL']:\n return import('./night-owl-36dc5565.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.NORD:\n return import('./nord-ce9f3484.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme['OCEANIC-NEXT']:\n return import('./oceanic-next-e3f20f17.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme['ONE-DARK']:\n return import('./one-dark-3da1a5b7.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme['ONE-LIGHT']:\n return import('./one-light-81b6cd67.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.PANDA:\n return import('./panda-2e75c11f.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.PARAISO:\n return import('./paraiso-cc30311f.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.SETI:\n return import('./seti-977c4512.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme['SHADES-OF-PURPLE']:\n return import('./shades-of-purple-649a9b24.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme['SOLARIZED-DARK']:\n return import('./solarized-dark-d1ab5e8b.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme['SOLARIZED-LIGHT']:\n return import('./solarized-light-429511f1.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.SYNTHWAVE:\n return import('./synthwave-af3bb869.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.TWILIGHT:\n return import('./twilight-68d946d8.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.VERMINAL:\n return import('./verminal-f2bc4235.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.VSCODE:\n return import('./vscode-1e0057d8.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.YETI:\n return import('./yeti-67a4664e.js');\n\n case DeckdeckgoHighlightCodeCarbonTheme.ZENBURN:\n return import('./zenburn-a2e7f052.js');\n\n default:\n return import('./dracula-0eb4b4d6.js');\n }\n}\n\nvar CarbonThemeStyle = function CarbonThemeStyle(_a) {\n var style = _a.style;\n return h(\"style\", null, \"\\n :host \" + style + \";\\n \");\n};\n\nvar deckdeckgoHighlightCodeCss = \"code[class*=\\\"language-\\\"],pre[class*=\\\"language-\\\"]{color:black;background:none;text-shadow:0 1px white;font-family:Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=\\\"language-\\\"]::-moz-selection,pre[class*=\\\"language-\\\"] ::-moz-selection,code[class*=\\\"language-\\\"]::-moz-selection,code[class*=\\\"language-\\\"] ::-moz-selection{text-shadow:none;background:#b3d4fc}pre[class*=\\\"language-\\\"]::-moz-selection,pre[class*=\\\"language-\\\"] ::-moz-selection,code[class*=\\\"language-\\\"]::-moz-selection,code[class*=\\\"language-\\\"] ::-moz-selection{text-shadow:none;background:#b3d4fc}pre[class*=\\\"language-\\\"]::selection,pre[class*=\\\"language-\\\"] ::selection,code[class*=\\\"language-\\\"]::selection,code[class*=\\\"language-\\\"] ::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=\\\"language-\\\"],pre[class*=\\\"language-\\\"]{text-shadow:none}}pre[class*=\\\"language-\\\"]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=\\\"language-\\\"],pre[class*=\\\"language-\\\"]{background:#f5f2f0}:not(pre)>code[class*=\\\"language-\\\"]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:slategray}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#905}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#690}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:#9a6e3a;background:hsla(0, 0%, 100%, .5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function,.token.class-name{color:#DD4A68}.token.regex,.token.important,.token.variable{color:#e90}.token.important,.token.bold{font-weight:bold}.token.italic{font-style:italic}.token.entity{cursor:help}:host ::slotted([slot=code]){display:none}:host(.deckgo-highlight-code-edit) ::slotted([slot=code]){display:block;white-space:pre-wrap}:host(.deckgo-highlight-code-edit) code{display:none}:host([editable]) code:empty:not(:focus):after{content:var(--deckgo-highlight-code-empty-text, \\\"Click to add your code\\\")}:host(.deckgo-highlight-code-carbon){display:var(--deckgo-highlight-code-carbon-display, block);overflow:var(--deckgo-highlight-code-carbon-overflow, auto);border:var(--deckgo-highlight-code-carbon-border);border-radius:var(--deckgo-highlight-code-carbon-border-radius, 4px);background:var(--deckgo-highlight-code-carbon-background, #282a36);color:var(--deckgo-highlight-code-carbon-color, white);-webkit-box-shadow:var(--deckgo-highlight-code-carbon-box-shadow, rgba(0, 0, 0, 0.55) 0 8px 16px);box-shadow:var(--deckgo-highlight-code-carbon-box-shadow, rgba(0, 0, 0, 0.55) 0 8px 16px);margin:var(--deckgo-highlight-code-carbon-margin, 16px 0)}:host(.deckgo-highlight-code-carbon) div.deckgo-highlight-code-container{margin:var(--deckgo-highlight-code-margin, 0 0 16px)}:host(.deckgo-highlight-code-carbon) div.deckgo-highlight-code-container code>div.deckgo-highlight-code-line-number:before{background:var(--deckgo-highlight-code-carbon-background, transparent);border-color:var(--deckgo-highlight-code-line-numbers, var(--deckgo-highlight-code-token-comment, #6272a4));color:var(--deckgo-highlight-code-line-numbers, var(--deckgo-highlight-code-token-comment, #6272a4))}:host(.deckgo-highlight-code-carbon) ::slotted([slot=code]){color:var(--deckgo-highlight-code-carbon-color, white)}:host(.deckgo-highlight-code-ubuntu){display:var(--deckgo-highlight-code-ubuntu-display, block);overflow:var(--deckgo-highlight-code-ubuntu-overflow, auto);border:var(--deckgo-highlight-code-ubuntu-border);border-radius:var(--deckgo-highlight-code-ubuntu-border-radius, 6px 6px 0 0);background:var(--deckgo-highlight-code-ubuntu-background, #4c1e3d);color:var(--deckgo-highlight-code-ubuntu-color, #ddd);-webkit-box-shadow:var(--deckgo-highlight-code-ubuntu-box-shadow, 2px 4px 10px rgba(0, 0, 0, 0.5));box-shadow:var(--deckgo-highlight-code-ubuntu-box-shadow, 2px 4px 10px rgba(0, 0, 0, 0.5));margin:var(--deckgo-highlight-code-ubuntu-margin, 16px 0)}:host(.deckgo-highlight-code-ubuntu) div.deckgo-highlight-code-container{margin:var(--deckgo-highlight-code-margin, 0 0 16px);padding:var(--deckgo-highlight-code-padding, 2px 0 0);background:transparent}:host(.deckgo-highlight-code-ubuntu) div.deckgo-highlight-code-container code{font-family:var(--deckgo-highlight-code-font-family, \\\"Ubuntu mono\\\")}:host(.deckgo-highlight-code-ubuntu) div.deckgo-highlight-code-container code>div.deckgo-highlight-code-line-number:before{background:var(--deckgo-highlight-code-ubuntu-background, #4c1e3d)}:host(.deckgo-highlight-code-ubuntu) ::slotted([slot=code]){color:var(--deckgo-highlight-code-ubuntu-color, #ddd)}div.deckgo-highlight-code-container{color:var(--deckgo-highlight-code-color, inherit);background:var(--deckgo-highlight-code-background);padding:var(--deckgo-highlight-code-padding, 0 16px);border-radius:var(--deckgo-highlight-code-border-radius);margin:var(--deckgo-highlight-code-margin, 16px 0);-webkit-transform-origin:bottom left;transform-origin:bottom left;-webkit-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out;-webkit-transform:scale(var(--deckgo-highlight-code-zoom, 1));transform:scale(var(--deckgo-highlight-code-zoom, 1));direction:var(--deckgo-highlight-code-direction, ltr);text-align:var(--deckgo-highlight-code-text-align, start);width:var(--deckgo-highlight-code-container-width);height:var(--deckgo-highlight-code-container-height);display:var(--deckgo-highlight-code-container-display, block);-ms-flex-pack:var(--deckgo-highlight-code-container-justify-content);justify-content:var(--deckgo-highlight-code-container-justify-content);-ms-flex-direction:var(--deckgo-highlight-code-container-flex-direction);flex-direction:var(--deckgo-highlight-code-container-flex-direction);-ms-flex-align:var(--deckgo-highlight-code-container-align-items);align-items:var(--deckgo-highlight-code-container-align-items)}div.deckgo-highlight-code-container code{overflow-y:var(--deckgo-highlight-code-scroll, scroll);white-space:var(--deckgo-highlight-code-white-space, pre-wrap);font-size:var(--deckgo-highlight-code-font-size);font-family:var(--deckgo-highlight-code-font-family, monospace);display:var(--deckgo-highlight-code-display, block);counter-reset:linenumber;}div.deckgo-highlight-code-container code>div.deckgo-highlight-code-line-number{counter-increment:linenumber;position:relative;padding-left:3.5em}div.deckgo-highlight-code-container code>div.deckgo-highlight-code-line-number:before{content:counter(linenumber);display:inline-block;position:absolute;top:0;bottom:0;left:0;width:2.5em;background:var(--deckgo-highlight-code-background);border-right:1px solid var(--deckgo-highlight-code-line-numbers, var(--deckgo-highlight-code-token-comment, #6272a4));color:var(--deckgo-highlight-code-line-numbers, var(--deckgo-highlight-code-token-comment, #6272a4))}div.deckgo-highlight-code-container code span.deckgo-highlight-code-anchor-hidden{visibility:hidden}div.deckgo-highlight-code-container code .deckgo-highlight-code-line{background:var(--deckgo-highlight-code-line-background, #3e4564);border-top:var(--deckgo-highlight-code-line-border-top);border-bottom:var(--deckgo-highlight-code-line-border-bottom)}div.deckgo-highlight-code-container code .language-css .token.string:not(.deckgo-highlight-code-line),div.deckgo-highlight-code-container code .style .token.string:not(.deckgo-highlight-code-line),div.deckgo-highlight-code-container code .token.entity:not(.deckgo-highlight-code-line),div.deckgo-highlight-code-container code .token.operator:not(.deckgo-highlight-code-line),div.deckgo-highlight-code-container code .token.url:not(.deckgo-highlight-code-line){background:inherit}div.deckgo-highlight-code-container code .token.comment,div.deckgo-highlight-code-container code .token.prolog,div.deckgo-highlight-code-container code .token.doctype,div.deckgo-highlight-code-container code .token.cdata{color:var(--deckgo-highlight-code-token-comment, #6272a4)}div.deckgo-highlight-code-container code .token.punctuation{color:var(--deckgo-highlight-code-token-punctuation, #6272a4)}div.deckgo-highlight-code-container code .token.property,div.deckgo-highlight-code-container code .token.tag,div.deckgo-highlight-code-container code .token.boolean,div.deckgo-highlight-code-container code .token.number,div.deckgo-highlight-code-container code .token.constant,div.deckgo-highlight-code-container code .token.symbol,div.deckgo-highlight-code-container code .token.deleted{color:var(--deckgo-highlight-code-token-property, #bd93f9)}div.deckgo-highlight-code-container code .token.selector,div.deckgo-highlight-code-container code .token.attr-name,div.deckgo-highlight-code-container code .token.string,div.deckgo-highlight-code-container code .token.char,div.deckgo-highlight-code-container code .token.builtin,div.deckgo-highlight-code-container code .token.inserted{color:var(--deckgo-highlight-code-token-selector, #50fa7b)}div.deckgo-highlight-code-container code .token.operator,div.deckgo-highlight-code-container code .token.entity,div.deckgo-highlight-code-container code .token.url,div.deckgo-highlight-code-container code .language-css .token.string,div.deckgo-highlight-code-container code .style .token.string{color:var(--deckgo-highlight-code-token-operator, #ff79c6)}div.deckgo-highlight-code-container code .token.atrule,div.deckgo-highlight-code-container code .token.attr-value,div.deckgo-highlight-code-container code .token.keyword{color:var(--deckgo-highlight-code-token-atrule, #ff79c6)}div.deckgo-highlight-code-container code .token.function,div.deckgo-highlight-code-container code .token.class-name{color:var(--deckgo-highlight-code-token-function, #ffb86c)}div.deckgo-highlight-code-container code .token.regex,div.deckgo-highlight-code-container code .token.important,div.deckgo-highlight-code-container code .token.variable{color:var(--deckgo-highlight-code-token-regex, #f1fa8c)}div.carbon{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;padding:var(--deckgo-highlight-code-carbon-header-padding, 16px)}div.carbon>div{width:var(--deckgo-highlight-code-carbon-header-button-width, 12px);height:var(--deckgo-highlight-code-carbon-header-button-height, 12px);border-radius:var(--deckgo-highlight-code-carbon-header-button-border-radius, 50%);margin:var(--deckgo-highlight-code-carbon-header-button-margin, 0 6px 0 0)}div.carbon>div.red{background:var(--deckgo-highlight-code-carbon-header-button-red-background, #ff5f56);border:var(--deckgo-highlight-code-carbon-header-button-red-border, 0.5px solid #e0443e)}div.carbon>div.yellow{background:var(--deckgo-highlight-code-carbon-header-button-yellow-background, #ffbd2e);border:var(--deckgo-highlight-code-carbon-header-button-yellow-border, 0.5px solid #dea123)}div.carbon>div.green{background:var(--deckgo-highlight-code-carbon-header-button-green-background, #27c93f);border:var(--deckgo-highlight-code-carbon-header-button-green-border, 0.5px solid #1aab29)}div.ubuntu{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center;padding:var(--deckgo-highlight-code-ubuntu-header-padding, 0 8px);height:var(--deckgo-highlight-code-ubuntu-header-height, 25px);background:var(--deckgo-highlight-code-ubuntu-header-background, linear-gradient(#504b45 0%, #3c3b37 100%));font-family:var(--deckgo-highlight-code-ubuntu-header-font-family, \\\"Ubuntu\\\")}div.ubuntu>div{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:var(--deckgo-highlight-code-carbon-header-button-width, 12px);height:var(--deckgo-highlight-code-carbon-header-button-height, 12px);border-radius:var(--deckgo-highlight-code-carbon-header-button-border-radius, 50%);margin:var(--deckgo-highlight-code-carbon-header-button-margin, 0 4px 0 0);font-size:var(--deckgo-highlight-code-carbon-header-button-font-size, 7px);color:var(--deckgo-highlight-code-carbon-header-button-color, black);text-shadow:var(--deckgo-highlight-code-carbon-header-button-text-shadow, 0px 1px 0px rgba(255, 255, 255, 0.2));-webkit-box-shadow:var(--deckgo-highlight-code-carbon-header-button-box-shadow, 0px 0px 1px 0px #41403a, 0px 1px 1px 0px #474642);box-shadow:var(--deckgo-highlight-code-carbon-header-button-box-shadow, 0px 0px 1px 0px #41403a, 0px 1px 1px 0px #474642)}div.ubuntu>div.close{background:var(--deckgo-highlight-code-carbon-header-button-close-background, linear-gradient(#f37458 0%, #de4c12 100%));border:var(--deckgo-highlight-code-carbon-header-button-close-border)}div.ubuntu>div.minimize{background:var(--deckgo-highlight-code-carbon-header-button-minimize-background, linear-gradient(#7d7871 0%, #595953 100%));border:var(--deckgo-highlight-code-carbon-header-button-minimize-border)}div.ubuntu>div.maximize{background:var(--deckgo-highlight-code-carbon-header-button-maximize-background, linear-gradient(#7d7871 0%, #595953 100%));border:var(--deckgo-highlight-code-carbon-header-button-maximize-border)}div.ubuntu>p{color:var(--deckgo-highlight-code-carbon-header-user-color, #d5d0ce);font-size:var(--deckgo-highlight-code-carbon-header-user-font-size, 12px);line-height:var(--deckgo-highlight-code-carbon-header-user-line-height, 14px);margin:var(--deckgo-highlight-code-carbon-header-user-margin, 0 0 1px 4px)}\";\n\nvar DeckdeckgoHighlightCode =\n/** @class */\nfunction () {\n function class_1(hostRef) {\n var _this = this;\n\n registerInstance(this, hostRef);\n this.anchor = '// DeckDeckGo';\n this.anchorZoom = '// DeckDeckGoZoom';\n this.hideAnchor = true;\n this.language = 'javascript';\n this.lineNumbers = false;\n this.terminal = DeckdeckgoHighlightCodeTerminal.CARBON;\n this.editable = false;\n this.theme = DeckdeckgoHighlightCodeCarbonTheme.DRACULA;\n this.editing = false;\n this.anchorOffsetTop = 0;\n this.fetchOrParseAfterUpdate = false;\n\n this.catchNewLine = function ($event) {\n return __awaiter(_this, void 0, void 0, function () {\n var selection, charCode;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!($event && $event.key === 'Enter')) return [3\n /*break*/\n , 2];\n $event.preventDefault();\n return [4\n /*yield*/\n , this.getSelection()];\n\n case 1:\n selection = _a.sent();\n\n if (selection && selection.focusNode && selection.focusNode.textContent && selection.focusOffset > 0) {\n charCode = selection.focusNode.textContent.charCodeAt(window.getSelection().focusOffset);\n document.execCommand('insertHTML', false, charCode === 10 || charCode === 13 ? '\\n' : '\\n\\n');\n } else {\n document.execCommand('insertHTML', false, '\\n\\n');\n }\n\n _a.label = 2;\n\n case 2:\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n this.applyCode = function () {\n return __awaiter(_this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.stopEditing()];\n\n case 1:\n _a.sent();\n\n return [4\n /*yield*/\n , this.parseSlottedCode()];\n\n case 2:\n _a.sent();\n\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n this.prismLanguageLoaded = createEvent(this, \"prismLanguageLoaded\", 7);\n this.codeDidChange = createEvent(this, \"codeDidChange\", 7);\n }\n\n class_1.prototype.componentWillLoad = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.loadGoogleFonts()];\n\n case 1:\n _a.sent();\n\n return [4\n /*yield*/\n , this.loadTheme()];\n\n case 2:\n _a.sent();\n\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n class_1.prototype.componentDidLoad = function () {\n return __awaiter(this, void 0, void 0, function () {\n var languageWasLoaded;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.languageDidLoad()];\n\n case 1:\n languageWasLoaded = _a.sent();\n return [4\n /*yield*/\n , this.loadLanguage()];\n\n case 2:\n _a.sent();\n\n if (!languageWasLoaded) return [3\n /*break*/\n , 4];\n return [4\n /*yield*/\n , this.fetchOrParse()];\n\n case 3:\n _a.sent();\n\n _a.label = 4;\n\n case 4:\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n class_1.prototype.componentDidUpdate = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this.fetchOrParseAfterUpdate) return [3\n /*break*/\n , 2];\n return [4\n /*yield*/\n , this.fetchOrParse()];\n\n case 1:\n _a.sent();\n\n this.fetchOrParseAfterUpdate = false;\n _a.label = 2;\n\n case 2:\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n class_1.prototype.loadTheme = function () {\n return __awaiter(this, void 0, void 0, function () {\n var theme;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (this.terminal !== DeckdeckgoHighlightCodeTerminal.CARBON || !this.theme) {\n this.themeStyle = undefined;\n return [2\n /*return*/\n ];\n }\n\n return [4\n /*yield*/\n , loadTheme(this.theme)];\n\n case 1:\n theme = _a.sent().theme;\n this.themeStyle = theme;\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n class_1.prototype.languageLoaded = function ($event) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!$event || !$event.detail) {\n return [2\n /*return*/\n ];\n }\n\n if (!(this.language && this.language !== 'javascript' && $event.detail === this.language)) return [3\n /*break*/\n , 2];\n return [4\n /*yield*/\n , this.fetchOrParse()];\n\n case 1:\n _a.sent();\n\n _a.label = 2;\n\n case 2:\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n class_1.prototype.fetchOrParse = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this.src) return [3\n /*break*/\n , 2];\n return [4\n /*yield*/\n , this.fetchCode()];\n\n case 1:\n _a.sent();\n\n return [3\n /*break*/\n , 4];\n\n case 2:\n return [4\n /*yield*/\n , this.parseSlottedCode()];\n\n case 3:\n _a.sent();\n\n _a.label = 4;\n\n case 4:\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n class_1.prototype.languageDidLoad = function () {\n var _this = this;\n\n return new Promise(function (resolve) {\n if (!document || !_this.language || _this.language === '') {\n resolve(false);\n return;\n }\n\n if (_this.language === 'javascript') {\n resolve(true);\n return;\n }\n\n var scripts = document.querySelector(\"[deckdeckgo-prism-loaded='\" + _this.language + \"']\");\n\n if (scripts) {\n resolve(true);\n } else {\n resolve(false);\n }\n });\n };\n\n class_1.prototype.loadLanguage = function () {\n var _this = this;\n\n return new Promise(function (resolve) {\n return __awaiter(_this, void 0, void 0, function () {\n var scripts, script;\n\n var _this = this;\n\n return __generator(this, function (_a) {\n if (!document || !this.language || this.language === '' || this.language === 'javascript') {\n resolve();\n return [2\n /*return*/\n ];\n }\n\n scripts = document.querySelector(\"[deckdeckgo-prism='\" + this.language + \"']\");\n\n if (scripts) {\n resolve();\n return [2\n /*return*/\n ];\n }\n\n script = document.createElement('script');\n\n script.onload = function () {\n return __awaiter(_this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n script.setAttribute('deckdeckgo-prism-loaded', this.language);\n this.prismLanguageLoaded.emit(this.language);\n return [2\n /*return*/\n ];\n });\n });\n };\n\n script.onerror = function () {\n return __awaiter(_this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (script.parentElement) {\n script.parentElement.removeChild(script);\n } // if the language definition doesn't exist or if unpkg is down, display code anyway\n\n\n this.prismLanguageLoaded.emit(this.language);\n return [2\n /*return*/\n ];\n });\n });\n };\n\n script.src = 'https://unpkg.com/prismjs@latest/components/prism-' + this.language + '.js';\n script.setAttribute('deckdeckgo-prism', this.language);\n script.defer = true;\n document.head.appendChild(script);\n resolve();\n return [2\n /*return*/\n ];\n });\n });\n });\n };\n\n class_1.prototype.onLineNumbersChange = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.fetchOrParse()];\n\n case 1:\n _a.sent();\n\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n class_1.prototype.onCarbonChange = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n this.fetchOrParseAfterUpdate = true;\n return [4\n /*yield*/\n , this.loadGoogleFonts()];\n\n case 1:\n _a.sent();\n\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n class_1.prototype.loadGoogleFonts = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!(this.terminal === DeckdeckgoHighlightCodeTerminal.UBUNTU)) return [3\n /*break*/\n , 2];\n return [4\n /*yield*/\n , injectCSS('google-fonts-ubuntu', 'https://fonts.googleapis.com/css?family=Ubuntu|Ubuntu+Mono&display=swap')];\n\n case 1:\n _a.sent();\n\n _a.label = 2;\n\n case 2:\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n class_1.prototype.load = function () {\n var _this = this;\n\n return new Promise(function (resolve) {\n return __awaiter(_this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this.language || this.language === '') {\n resolve();\n return [2\n /*return*/\n ];\n }\n\n if (!(this.language === 'javascript')) return [3\n /*break*/\n , 2];\n return [4\n /*yield*/\n , this.fetchOrParse()];\n\n case 1:\n _a.sent();\n\n resolve();\n return [2\n /*return*/\n ];\n\n case 2:\n if (!document.querySelector(\"[deckdeckgo-prism-loaded='\" + this.language + \"']\")) return [3\n /*break*/\n , 4];\n return [4\n /*yield*/\n , this.fetchOrParse()];\n\n case 3:\n _a.sent();\n\n return [3\n /*break*/\n , 6];\n\n case 4:\n return [4\n /*yield*/\n , this.loadLanguage()];\n\n case 5:\n _a.sent();\n\n _a.label = 6;\n\n case 6:\n resolve();\n return [2\n /*return*/\n ];\n }\n });\n });\n });\n };\n\n class_1.prototype.parseSlottedCode = function () {\n var code = this.el.querySelector(\"[slot='code']\");\n\n if (code) {\n return this.parseCode(code.innerText ? code.innerText.trim() : code.innerText);\n } else {\n return new Promise(function (resolve) {\n resolve();\n });\n }\n };\n\n class_1.prototype.fetchCode = function () {\n return __awaiter(this, void 0, void 0, function () {\n var fetchedCode, response, e_1, container;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this.src) {\n return [2\n /*return*/\n ];\n }\n\n _a.label = 1;\n\n case 1:\n _a.trys.push([1, 5,, 6]);\n\n return [4\n /*yield*/\n , fetch(this.src)];\n\n case 2:\n response = _a.sent();\n return [4\n /*yield*/\n , response.text()];\n\n case 3:\n fetchedCode = _a.sent();\n return [4\n /*yield*/\n , this.parseCode(fetchedCode)];\n\n case 4:\n _a.sent();\n\n return [3\n /*break*/\n , 6];\n\n case 5:\n e_1 = _a.sent();\n container = this.el.shadowRoot.querySelector('div.deckgo-highlight-code-container');\n\n if (container && fetchedCode) {\n container.children[0].innerHTML = fetchedCode;\n }\n\n return [3\n /*break*/\n , 6];\n\n case 6:\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n class_1.prototype.parseCode = function (code) {\n var _this = this;\n\n return new Promise(function (resolve, reject) {\n return __awaiter(_this, void 0, void 0, function () {\n var container, regEx, match, err_1;\n\n var _this = this;\n\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n container = this.el.shadowRoot.querySelector('div.deckgo-highlight-code-container');\n\n if (!code || code === undefined || code === '') {\n resolve();\n return [2\n /*return*/\n ];\n }\n\n if (!container) return [3\n /*break*/\n , 4];\n _a.label = 1;\n\n case 1:\n _a.trys.push([1, 3,, 4]); // clear the container first\n\n\n container.children[0].innerHTML = '';\n regEx = RegExp(/\\n(?!$)/g);\n match = code.split(regEx);\n match.forEach(function (m, idx, array) {\n // On last element\n if (idx === array.length - 1) {\n _this.attachHighlightObserver(container);\n }\n\n var div = document.createElement('div');\n\n if (_this.lineNumbers) {\n div.classList.add('deckgo-highlight-code-line-number');\n }\n\n var highlight = prism.highlight(m, prism.languages[_this.language], _this.language); // If empty, use \\u200B as zero width text spacer\n\n div.innerHTML = highlight && highlight !== '' ? highlight : \"\\u200B\";\n container.children[0].appendChild(div);\n });\n return [4\n /*yield*/\n , this.addAnchors()];\n\n case 2:\n _a.sent();\n\n resolve();\n return [3\n /*break*/\n , 4];\n\n case 3:\n err_1 = _a.sent();\n reject(err_1);\n return [3\n /*break*/\n , 4];\n\n case 4:\n return [2\n /*return*/\n ];\n }\n });\n });\n });\n };\n\n class_1.prototype.attachHighlightObserver = function (container) {\n var _this = this;\n\n if (window && 'ResizeObserver' in window) {\n // @ts-ignore\n var observer_1 = new ResizeObserver(function (_entries) {\n return __awaiter(_this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.addHighlight()];\n\n case 1:\n _a.sent();\n\n observer_1.disconnect();\n return [2\n /*return*/\n ];\n }\n });\n });\n });\n observer_1.observe(container);\n } else {\n // Back in my days...\n setTimeout(function () {\n return __awaiter(_this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.addHighlight()];\n\n case 1:\n _a.sent();\n\n return [2\n /*return*/\n ];\n }\n });\n });\n }, 100);\n }\n };\n\n class_1.prototype.addAnchors = function () {\n var _this = this;\n\n return new Promise(function (resolve) {\n var elements = _this.el.shadowRoot.querySelectorAll('span.comment');\n\n if (elements) {\n var elementsArray = Array.from(elements);\n var anchors = elementsArray.filter(function (element) {\n return _this.hasLineAnchor(element.innerHTML);\n });\n\n if (anchors) {\n anchors.forEach(function (anchor) {\n anchor.classList.add('deckgo-highlight-code-anchor');\n\n if (_this.hideAnchor) {\n anchor.classList.add('deckgo-highlight-code-anchor-hidden');\n }\n });\n }\n }\n\n resolve();\n });\n };\n\n class_1.prototype.hasLineAnchor = function (line) {\n return line && this.anchor && line.indexOf('@Prop') === -1 && line.split(' ').join('').indexOf(this.anchor.split(' ').join('')) > -1;\n };\n\n class_1.prototype.addHighlight = function () {\n var _this = this;\n\n return new Promise(function (resolve) {\n return __awaiter(_this, void 0, void 0, function () {\n var rows_1, containerCode, elements, rowIndex_1, lastOffsetTop_1, offsetHeight_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!(this.highlightLines && this.highlightLines.length > 0)) return [3\n /*break*/\n , 2];\n return [4\n /*yield*/\n , this.findRowsToHighlight()];\n\n case 1:\n rows_1 = _a.sent();\n\n if (rows_1 && rows_1.length > 0) {\n containerCode = this.el.shadowRoot.querySelector('code');\n\n if (containerCode && containerCode.hasChildNodes()) {\n elements = Array.prototype.slice.call(containerCode.childNodes);\n rowIndex_1 = 0;\n lastOffsetTop_1 = -1;\n offsetHeight_1 = -1;\n elements.forEach(function (element) {\n var editElement; // We need to convert text entries to an element in order to be able to style it\n\n if (element.nodeName === '#text') {\n var span = document.createElement('span');\n\n if (element.previousElementSibling) {\n element.previousElementSibling.insertAdjacentElement('afterend', span);\n } else {\n element.parentNode.prepend(span);\n }\n\n span.appendChild(element);\n editElement = span;\n } else {\n editElement = element;\n } // We try to find the row index with the offset of the element\n\n\n rowIndex_1 = editElement.offsetTop > lastOffsetTop_1 ? rowIndex_1 + 1 : rowIndex_1;\n lastOffsetTop_1 = editElement.offsetTop; // For some reason, some converted text element are displayed on two lines, that's why we should consider the 2nd one as index\n\n offsetHeight_1 = offsetHeight_1 === -1 || offsetHeight_1 > editElement.offsetHeight ? editElement.offsetHeight : offsetHeight_1;\n var rowsIndexToCompare = editElement.offsetHeight > offsetHeight_1 ? rowIndex_1 + 1 : rowIndex_1;\n\n if (rows_1.indexOf(rowsIndexToCompare) > -1) {\n editElement.classList.add('deckgo-highlight-code-line');\n }\n });\n }\n }\n\n _a.label = 2;\n\n case 2:\n resolve();\n return [2\n /*return*/\n ];\n }\n });\n });\n });\n };\n\n class_1.prototype.findRowsToHighlight = function () {\n var _this = this;\n\n return new Promise(function (resolve) {\n var results = [];\n\n var rows = _this.highlightLines.split(' ');\n\n if (rows && rows.length > 0) {\n rows.forEach(function (row) {\n var index = row.split(',');\n\n if (index && index.length >= 1) {\n var start = parseInt(index[0], 0);\n var end = parseInt(index[1], 0);\n\n for (var i = start; i <= end; i++) {\n results.push(i);\n }\n }\n });\n }\n\n resolve(results);\n });\n };\n\n class_1.prototype.findNextAnchor = function (enter) {\n var _this = this;\n\n return new Promise(function (resolve) {\n return __awaiter(_this, void 0, void 0, function () {\n var elements, elementsArray, anchor, elementCode;\n\n var _this = this;\n\n return __generator(this, function (_a) {\n elements = this.el.shadowRoot.querySelectorAll('span.deckgo-highlight-code-anchor');\n\n if (elements) {\n elementsArray = enter ? Array.from(elements) : Array.from(elements).reverse();\n anchor = elementsArray.find(function (element) {\n return enter ? element.offsetTop > _this.anchorOffsetTop : element.offsetTop < _this.anchorOffsetTop;\n });\n\n if (anchor) {\n this.anchorOffsetTop = anchor.offsetTop;\n resolve({\n offsetTop: anchor.offsetTop,\n hasLineZoom: this.hasLineZoom(anchor.textContent)\n });\n } else if (!enter) {\n elementCode = this.el.shadowRoot.querySelector('code');\n\n if (elementCode && elementCode.firstElementChild) {\n this.anchorOffsetTop = 0;\n resolve({\n offsetTop: 0,\n hasLineZoom: false\n });\n } else {\n resolve(null);\n }\n } else {\n resolve(null);\n }\n } else {\n resolve(null);\n }\n\n return [2\n /*return*/\n ];\n });\n });\n });\n };\n\n class_1.prototype.zoomCode = function (zoom) {\n var _this = this;\n\n return new Promise(function (resolve) {\n var container = _this.el.shadowRoot.querySelector('div.deckgo-highlight-code-container');\n\n if (container) {\n container.style.setProperty('--deckgo-highlight-code-zoom', zoom ? '1.3' : '1');\n }\n\n resolve();\n });\n };\n\n class_1.prototype.hasLineZoom = function (line) {\n return line && this.anchorZoom && line.indexOf('@Prop') === -1 && line.split(' ').join('').indexOf(this.anchorZoom.split(' ').join('')) > -1;\n };\n\n class_1.prototype.edit = function () {\n var _this = this;\n\n return new Promise(function (resolve) {\n if (!_this.editable) {\n resolve();\n return;\n }\n\n _this.editing = true;\n\n var slottedCode = _this.el.querySelector(\"[slot='code']\");\n\n if (slottedCode) {\n setTimeout(function () {\n slottedCode.setAttribute('contentEditable', 'true');\n slottedCode.addEventListener('blur', _this.applyCode, {\n once: true\n });\n slottedCode.addEventListener('keydown', _this.catchNewLine);\n slottedCode.focus();\n }, 100);\n }\n\n resolve();\n });\n };\n\n class_1.prototype.getSelection = function () {\n return new Promise(function (resolve) {\n var selectedSelection = null;\n\n if (window && window.getSelection) {\n selectedSelection = window.getSelection();\n } else if (document && document.getSelection) {\n selectedSelection = document.getSelection();\n } else if (document && document.selection) {\n selectedSelection = document.selection.createRange().text;\n }\n\n resolve(selectedSelection);\n });\n };\n\n class_1.prototype.stopEditing = function () {\n var _this = this;\n\n return new Promise(function (resolve) {\n _this.editing = false;\n\n var slottedCode = _this.el.querySelector(\"[slot='code']\");\n\n if (slottedCode) {\n slottedCode.removeAttribute('contentEditable');\n\n if (slottedCode.innerHTML) {\n slottedCode.innerHTML = slottedCode.innerHTML.trim();\n }\n\n _this.codeDidChange.emit(_this.el);\n }\n\n resolve();\n });\n };\n\n class_1.prototype.render = function () {\n var _this = this;\n\n var hostClass = {\n 'deckgo-highlight-code-edit': this.editing,\n 'deckgo-highlight-code-carbon': this.terminal === DeckdeckgoHighlightCodeTerminal.CARBON,\n 'deckgo-highlight-code-ubuntu': this.terminal === DeckdeckgoHighlightCodeTerminal.UBUNTU\n };\n\n if (this.terminal === DeckdeckgoHighlightCodeTerminal.CARBON) {\n hostClass[\"deckgo-highlight-code-theme-\" + this.theme] = true;\n }\n\n return h(Host, {\n \"class\": hostClass\n }, this.renderCarbon(), this.renderUbuntu(), h(\"div\", {\n \"class\": \"deckgo-highlight-code-container\",\n onMouseDown: function onMouseDown() {\n return _this.edit();\n },\n onTouchStart: function onTouchStart() {\n return _this.edit();\n }\n }, h(\"code\", null), h(\"slot\", {\n name: \"code\"\n })));\n };\n\n class_1.prototype.renderCarbon = function () {\n if (this.terminal !== DeckdeckgoHighlightCodeTerminal.CARBON) {\n return undefined;\n }\n\n return [h(CarbonThemeStyle, {\n style: this.themeStyle\n }), h(\"div\", {\n \"class\": \"carbon\"\n }, this.renderCarbonCircle('red'), this.renderCarbonCircle('yellow'), this.renderCarbonCircle('green'))];\n };\n\n class_1.prototype.renderCarbonCircle = function (color) {\n return h(\"div\", {\n \"class\": color\n });\n };\n\n class_1.prototype.renderUbuntu = function () {\n if (this.terminal !== DeckdeckgoHighlightCodeTerminal.UBUNTU) {\n return undefined;\n }\n\n return h(\"div\", {\n \"class\": \"ubuntu\"\n }, this.renderUbuntuCircle('close'), this.renderUbuntuCircle('minimize'), this.renderUbuntuCircle('maximize'), h(\"p\", null, h(\"slot\", {\n name: \"user\"\n })));\n };\n\n class_1.prototype.renderUbuntuCircle = function (mode) {\n var symbol = mode === 'close' ? '✕' : mode === 'minimize' ? '─' : '◻';\n return h(\"div\", {\n \"class\": mode,\n innerHTML: symbol\n });\n };\n\n Object.defineProperty(class_1.prototype, \"el\", {\n get: function get() {\n return getElement(this);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(class_1, \"watchers\", {\n get: function get() {\n return {\n \"theme\": [\"loadTheme\"],\n \"language\": [\"loadLanguage\"],\n \"lineNumbers\": [\"onLineNumbersChange\"],\n \"terminal\": [\"onCarbonChange\"]\n };\n },\n enumerable: true,\n configurable: true\n });\n return class_1;\n}();\n\nDeckdeckgoHighlightCode.style = deckdeckgoHighlightCodeCss;\nexport { DeckdeckgoHighlightCode as deckgo_highlight_code };","'use strict';\n// B.2.3.2 String.prototype.anchor(name)\nrequire('./_string-html')('anchor', function (createHTML) {\n return function anchor(name) {\n return createHTML(this, 'a', 'name', name);\n };\n});\n","var $export = require('./_export');\nvar fails = require('./_fails');\nvar defined = require('./_defined');\nvar quot = /\"/g;\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\nvar createHTML = function (string, tag, attribute, value) {\n var S = String(defined(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '"') + '\"';\n return p1 + '>' + S + '</' + tag + '>';\n};\nmodule.exports = function (NAME, exec) {\n var O = {};\n O[NAME] = exec(createHTML);\n $export($export.P + $export.F * fails(function () {\n var test = ''[NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n }), 'String', O);\n};\n"],"sourceRoot":""}