docsify.min.js 220 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672
  1. !(function () {
  2. function s(n) {
  3. var r = Object.create(null)
  4. return function (e) {
  5. var t = c(e) ? e : JSON.stringify(e)
  6. return r[t] || (r[t] = n(e))
  7. }
  8. }
  9. var o = s(function (e) {
  10. return e.replace(/([A-Z])/g, function (e) {
  11. return '-' + e.toLowerCase()
  12. })
  13. }),
  14. l = Object.prototype.hasOwnProperty,
  15. y =
  16. Object.assign ||
  17. function (e) {
  18. for (var t = arguments, n = 1; n < arguments.length; n++) {
  19. var r,
  20. i = Object(t[n])
  21. for (r in i) l.call(i, r) && (e[r] = i[r])
  22. }
  23. return e
  24. }
  25. function c(e) {
  26. return 'string' == typeof e || 'number' == typeof e
  27. }
  28. function u() {}
  29. function r(e) {
  30. return 'function' == typeof e
  31. }
  32. function p(e) {
  33. e = e.match(/^([^:/?#]+:)?(?:\/{2,}([^/?#]*))?([^?#]+)?(\?[^#]*)?(#.*)?/)
  34. return (
  35. ('string' == typeof e[1] && 0 < e[1].length && e[1].toLowerCase() !== location.protocol) ||
  36. ('string' == typeof e[2] && 0 < e[2].length && e[2].replace(new RegExp(':(' + { 'http:': 80, 'https:': 443 }[location.protocol] + ')?$'), '') !== location.host)
  37. )
  38. }
  39. var h = document.body.clientWidth <= 600,
  40. i = window.history && window.history.pushState && window.history.replaceState && !navigator.userAgent.match(/((iPod|iPhone|iPad).+\bOS\s+[1-4]\D|WebApps\/.+CFNetwork)/),
  41. n = {}
  42. function d(e, t) {
  43. if ((void 0 === t && (t = !1), 'string' == typeof e)) {
  44. if (void 0 !== window.Vue) return b(e)
  45. e = t ? b(e) : n[e] || (n[e] = b(e))
  46. }
  47. return e
  48. }
  49. var f = document,
  50. g = f.body,
  51. m = f.head
  52. function b(e, t) {
  53. return t ? e.querySelector(t) : f.querySelector(e)
  54. }
  55. function k(e, t) {
  56. return [].slice.call(t ? e.querySelectorAll(t) : f.querySelectorAll(e))
  57. }
  58. function v(e, t) {
  59. return (e = f.createElement(e)), t && (e.innerHTML = t), e
  60. }
  61. function a(e, t) {
  62. return e.appendChild(t)
  63. }
  64. function w(e, t) {
  65. return e.insertBefore(t, e.children[0])
  66. }
  67. function x(e, t, n) {
  68. r(t) ? window.addEventListener(e, t) : e.addEventListener(t, n)
  69. }
  70. function _(e, t, n) {
  71. r(t) ? window.removeEventListener(e, t) : e.removeEventListener(t, n)
  72. }
  73. function S(e, t, n) {
  74. e && e.classList[n ? t : 'toggle'](n || t)
  75. }
  76. function e(e, t) {
  77. void 0 === t && (t = document)
  78. var n = t.readyState
  79. if ('complete' === n || 'interactive' === n) return setTimeout(e, 0)
  80. t.addEventListener('DOMContentLoaded', e)
  81. }
  82. var t = Object.freeze({
  83. __proto__: null,
  84. getNode: d,
  85. $: f,
  86. body: g,
  87. head: m,
  88. find: b,
  89. findAll: k,
  90. create: v,
  91. appendTo: a,
  92. before: w,
  93. on: x,
  94. off: _,
  95. toggleClass: S,
  96. style: function (e) {
  97. a(m, v('style', e))
  98. },
  99. documentReady: e,
  100. }),
  101. A = decodeURIComponent,
  102. T = encodeURIComponent
  103. function E(e) {
  104. var t = {}
  105. return (
  106. (e = e.trim().replace(/^(\?|#|&)/, '')) &&
  107. e.split('&').forEach(function (e) {
  108. e = e.replace(/\+/g, ' ').split('=')
  109. t[e[0]] = e[1] && A(e[1])
  110. }),
  111. t
  112. )
  113. }
  114. function R(e, t) {
  115. void 0 === t && (t = [])
  116. var n,
  117. r = []
  118. for (n in e) -1 < t.indexOf(n) || r.push(e[n] ? (T(n) + '=' + T(e[n])).toLowerCase() : T(n))
  119. return r.length ? '?' + r.join('&') : ''
  120. }
  121. var O = s(function (e) {
  122. return /(:|(\/{2}))/g.test(e)
  123. }),
  124. $ = s(function (e) {
  125. return e.split(/[?#]/)[0]
  126. }),
  127. F = s(function (e) {
  128. if (/\/$/g.test(e)) return e
  129. e = e.match(/(\S*\/)[^/]+$/)
  130. return e ? e[1] : ''
  131. }),
  132. C = s(function (e) {
  133. return e.replace(/^\/+/, '/').replace(/([^:])\/{2,}/g, '$1/')
  134. }),
  135. L = s(function (e) {
  136. for (var t = e.replace(/^\//, '').split('/'), n = [], r = 0, i = t.length; r < i; r++) {
  137. var o = t[r]
  138. '..' === o ? n.pop() : '.' !== o && n.push(o)
  139. }
  140. return '/' + n.join('/')
  141. })
  142. function z(e) {
  143. return e
  144. .split('/')
  145. .filter(function (e) {
  146. return -1 === e.indexOf('#')
  147. })
  148. .join('/')
  149. }
  150. function N() {
  151. for (var e = [], t = arguments.length; t--; ) e[t] = arguments[t]
  152. return C(e.map(z).join('/'))
  153. }
  154. var M = s(function (e) {
  155. return e.replace('#', '?id=')
  156. })
  157. function D(e, t) {
  158. return -1 !== e.indexOf(t, e.length - t.length)
  159. }
  160. var P = {}
  161. var I = function (e) {
  162. this.config = e
  163. }
  164. function j(e) {
  165. var t = location.href.indexOf('#')
  166. location.replace(location.href.slice(0, 0 <= t ? t : 0) + '#' + e)
  167. }
  168. ;(I.prototype.getBasePath = function () {
  169. return this.config.basePath
  170. }),
  171. (I.prototype.getFile = function (e, t) {
  172. void 0 === e && (e = this.getCurrentPath())
  173. var n,
  174. r,
  175. i = this.config,
  176. o = this.getBasePath(),
  177. a = 'string' == typeof i.ext ? i.ext : '.md'
  178. return (
  179. (e = i.alias
  180. ? (function e(t, n, r) {
  181. var i = Object.keys(n).filter(function (e) {
  182. return (P[e] || (P[e] = new RegExp('^' + e + '$'))).test(t) && t !== r
  183. })[0]
  184. return i ? e(t.replace(P[i], n[i]), n, t) : t
  185. })(e, i.alias)
  186. : e),
  187. (n = e),
  188. (r = a),
  189. (e = ((e = new RegExp('\\.(' + r.replace(/^\./, '') + '|html)$', 'g').test(n) ? n : /\/$/g.test(n) ? n + 'README' + r : '' + n + r) === '/README' + a && i.homepage) || e),
  190. (e = O(e) ? e : N(o, e)),
  191. t && (e = e.replace(new RegExp('^' + o), '')),
  192. e
  193. )
  194. }),
  195. (I.prototype.onchange = function (e) {
  196. void 0 === e && (e = u), e()
  197. }),
  198. (I.prototype.getCurrentPath = function () {}),
  199. (I.prototype.normalize = function () {}),
  200. (I.prototype.parse = function () {}),
  201. (I.prototype.toURL = function (e, t, n) {
  202. var r = n && '#' === e[0],
  203. i = this.parse(M(e))
  204. if (
  205. ((i.query = y({}, i.query, t)),
  206. (e = (e = i.path + R(i.query)).replace(/\.md(\?)|\.md$/, '$1')),
  207. r && (e = (0 < (r = n.indexOf('?')) ? n.substring(0, r) : n) + e),
  208. this.config.relativePath && 0 !== e.indexOf('/'))
  209. ) {
  210. n = n.substring(0, n.lastIndexOf('/') + 1)
  211. return C(L(n + e))
  212. }
  213. return C('/' + e)
  214. })
  215. var H = (function (r) {
  216. function e(e) {
  217. r.call(this, e), (this.mode = 'hash')
  218. }
  219. return (
  220. r && (e.__proto__ = r),
  221. (((e.prototype = Object.create(r && r.prototype)).constructor = e).prototype.getBasePath = function () {
  222. var e = window.location.pathname || '',
  223. t = this.config.basePath,
  224. e = D(e, '.html') ? e + '#/' + t : e + '/' + t
  225. return /^(\/|https?:)/g.test(t) ? t : C(e)
  226. }),
  227. (e.prototype.getCurrentPath = function () {
  228. var e = location.href,
  229. t = e.indexOf('#')
  230. return -1 === t ? '' : e.slice(t + 1)
  231. }),
  232. (e.prototype.onchange = function (n) {
  233. void 0 === n && (n = u)
  234. var r = !1
  235. x('click', function (e) {
  236. e = 'A' === e.target.tagName ? e.target : e.target.parentNode
  237. e && 'A' === e.tagName && !/_blank/.test(e.target) && (r = !0)
  238. }),
  239. x('hashchange', function (e) {
  240. var t = r ? 'navigate' : 'history'
  241. ;(r = !1), n({ event: e, source: t })
  242. })
  243. }),
  244. (e.prototype.normalize = function () {
  245. var e = this.getCurrentPath()
  246. if ('/' === (e = M(e)).charAt(0)) return j(e)
  247. j('/' + e)
  248. }),
  249. (e.prototype.parse = function (e) {
  250. void 0 === e && (e = location.href)
  251. var t = '',
  252. n = e.indexOf('#')
  253. 0 <= n && (e = e.slice(n + 1))
  254. n = e.indexOf('?')
  255. return 0 <= n && ((t = e.slice(n + 1)), (e = e.slice(0, n))), { path: e, file: this.getFile(e, !0), query: E(t) }
  256. }),
  257. (e.prototype.toURL = function (e, t, n) {
  258. return '#' + r.prototype.toURL.call(this, e, t, n)
  259. }),
  260. e
  261. )
  262. })(I),
  263. q = (function (t) {
  264. function e(e) {
  265. t.call(this, e), (this.mode = 'history')
  266. }
  267. return (
  268. t && (e.__proto__ = t),
  269. (((e.prototype = Object.create(t && t.prototype)).constructor = e).prototype.getCurrentPath = function () {
  270. var e = this.getBasePath(),
  271. t = window.location.pathname
  272. return e && 0 === t.indexOf(e) && (t = t.slice(e.length)), (t || '/') + window.location.search + window.location.hash
  273. }),
  274. (e.prototype.onchange = function (n) {
  275. var r = this
  276. void 0 === n && (n = u),
  277. x('click', function (e) {
  278. var t = 'A' === e.target.tagName ? e.target : e.target.parentNode
  279. t &&
  280. 'A' === t.tagName &&
  281. !/_blank/.test(t.target) &&
  282. (e.preventDefault(),
  283. (t = t.href),
  284. -1 !== r.config.crossOriginLinks.indexOf(t) ? window.open(t, '_self') : window.history.pushState({ key: t }, '', t),
  285. n({ event: e, source: 'navigate' }))
  286. }),
  287. x('popstate', function (e) {
  288. n({ event: e, source: 'history' })
  289. })
  290. }),
  291. (e.prototype.parse = function (e) {
  292. void 0 === e && (e = location.href)
  293. var t = '',
  294. n = e.indexOf('?')
  295. 0 <= n && ((t = e.slice(n + 1)), (e = e.slice(0, n)))
  296. var r = N(location.origin),
  297. n = e.indexOf(r)
  298. return -1 < n && (e = e.slice(n + r.length)), { path: e, file: this.getFile(e), query: E(t) }
  299. }),
  300. e
  301. )
  302. })(I),
  303. U = {}
  304. var B = /([^{]*?)\w(?=\})/g,
  305. Z = {
  306. YYYY: 'getFullYear',
  307. YY: 'getYear',
  308. MM: function (e) {
  309. return e.getMonth() + 1
  310. },
  311. DD: 'getDate',
  312. HH: 'getHours',
  313. mm: 'getMinutes',
  314. ss: 'getSeconds',
  315. fff: 'getMilliseconds',
  316. }
  317. var G,
  318. W = Object.hasOwnProperty,
  319. V = Object.setPrototypeOf,
  320. Y = Object.isFrozen,
  321. X = Object.getPrototypeOf,
  322. K = Object.getOwnPropertyDescriptor,
  323. Fe = Object.freeze,
  324. Q = Object.seal,
  325. J = Object.create,
  326. ee = 'undefined' != typeof Reflect && Reflect,
  327. te =
  328. (te = ee.apply) ||
  329. function (e, t, n) {
  330. return e.apply(t, n)
  331. },
  332. Fe =
  333. Fe ||
  334. function (e) {
  335. return e
  336. },
  337. Q =
  338. Q ||
  339. function (e) {
  340. return e
  341. },
  342. ne =
  343. (ne = ee.construct) ||
  344. function (e, t) {
  345. return new (Function.prototype.bind.apply(
  346. e,
  347. [null].concat(
  348. (function (e) {
  349. if (Array.isArray(e)) {
  350. for (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t]
  351. return n
  352. }
  353. return Array.from(e)
  354. })(t)
  355. )
  356. ))()
  357. },
  358. Ce = re(Array.prototype.forEach),
  359. Le = re(Array.prototype.pop),
  360. ze = re(Array.prototype.push),
  361. Ne = re(String.prototype.toLowerCase),
  362. Me = re(String.prototype.match),
  363. De = re(String.prototype.replace),
  364. Pe = re(String.prototype.indexOf),
  365. Ie = re(String.prototype.trim),
  366. je = re(RegExp.prototype.test),
  367. He =
  368. ((G = TypeError),
  369. function () {
  370. for (var e = arguments, t = arguments.length, n = Array(t), r = 0; r < t; r++) n[r] = e[r]
  371. return ne(G, n)
  372. })
  373. function re(o) {
  374. return function (e) {
  375. for (var t = arguments, n = arguments.length, r = Array(1 < n ? n - 1 : 0), i = 1; i < n; i++) r[i - 1] = t[i]
  376. return te(o, e, r)
  377. }
  378. }
  379. function qe(e, t) {
  380. V && V(e, null)
  381. for (var n = t.length; n--; ) {
  382. var r,
  383. i = t[n]
  384. 'string' != typeof i || ((r = Ne(i)) !== i && (Y(t) || (t[n] = r), (i = r))), (e[i] = !0)
  385. }
  386. return e
  387. }
  388. function Ue(e) {
  389. var t = J(null),
  390. n = void 0
  391. for (n in e) te(W, e, [n]) && (t[n] = e[n])
  392. return t
  393. }
  394. function Be(e, t) {
  395. for (; null !== e; ) {
  396. var n = K(e, t)
  397. if (n) {
  398. if (n.get) return re(n.get)
  399. if ('function' == typeof n.value) return re(n.value)
  400. }
  401. e = X(e)
  402. }
  403. return function (e) {
  404. return console.warn('fallback value for', e), null
  405. }
  406. }
  407. var Ze = Fe([
  408. 'a',
  409. 'abbr',
  410. 'acronym',
  411. 'address',
  412. 'area',
  413. 'article',
  414. 'aside',
  415. 'audio',
  416. 'b',
  417. 'bdi',
  418. 'bdo',
  419. 'big',
  420. 'blink',
  421. 'blockquote',
  422. 'body',
  423. 'br',
  424. 'button',
  425. 'canvas',
  426. 'caption',
  427. 'center',
  428. 'cite',
  429. 'code',
  430. 'col',
  431. 'colgroup',
  432. 'content',
  433. 'data',
  434. 'datalist',
  435. 'dd',
  436. 'decorator',
  437. 'del',
  438. 'details',
  439. 'dfn',
  440. 'dialog',
  441. 'dir',
  442. 'div',
  443. 'dl',
  444. 'dt',
  445. 'element',
  446. 'em',
  447. 'fieldset',
  448. 'figcaption',
  449. 'figure',
  450. 'font',
  451. 'footer',
  452. 'form',
  453. 'h1',
  454. 'h2',
  455. 'h3',
  456. 'h4',
  457. 'h5',
  458. 'h6',
  459. 'head',
  460. 'header',
  461. 'hgroup',
  462. 'hr',
  463. 'html',
  464. 'i',
  465. 'img',
  466. 'input',
  467. 'ins',
  468. 'kbd',
  469. 'label',
  470. 'legend',
  471. 'li',
  472. 'main',
  473. 'map',
  474. 'mark',
  475. 'marquee',
  476. 'menu',
  477. 'menuitem',
  478. 'meter',
  479. 'nav',
  480. 'nobr',
  481. 'ol',
  482. 'optgroup',
  483. 'option',
  484. 'output',
  485. 'p',
  486. 'picture',
  487. 'pre',
  488. 'progress',
  489. 'q',
  490. 'rp',
  491. 'rt',
  492. 'ruby',
  493. 's',
  494. 'samp',
  495. 'section',
  496. 'select',
  497. 'shadow',
  498. 'small',
  499. 'source',
  500. 'spacer',
  501. 'span',
  502. 'strike',
  503. 'strong',
  504. 'style',
  505. 'sub',
  506. 'summary',
  507. 'sup',
  508. 'table',
  509. 'tbody',
  510. 'td',
  511. 'template',
  512. 'textarea',
  513. 'tfoot',
  514. 'th',
  515. 'thead',
  516. 'time',
  517. 'tr',
  518. 'track',
  519. 'tt',
  520. 'u',
  521. 'ul',
  522. 'var',
  523. 'video',
  524. 'wbr',
  525. ]),
  526. Ge = Fe([
  527. 'svg',
  528. 'a',
  529. 'altglyph',
  530. 'altglyphdef',
  531. 'altglyphitem',
  532. 'animatecolor',
  533. 'animatemotion',
  534. 'animatetransform',
  535. 'circle',
  536. 'clippath',
  537. 'defs',
  538. 'desc',
  539. 'ellipse',
  540. 'filter',
  541. 'font',
  542. 'g',
  543. 'glyph',
  544. 'glyphref',
  545. 'hkern',
  546. 'image',
  547. 'line',
  548. 'lineargradient',
  549. 'marker',
  550. 'mask',
  551. 'metadata',
  552. 'mpath',
  553. 'path',
  554. 'pattern',
  555. 'polygon',
  556. 'polyline',
  557. 'radialgradient',
  558. 'rect',
  559. 'stop',
  560. 'style',
  561. 'switch',
  562. 'symbol',
  563. 'text',
  564. 'textpath',
  565. 'title',
  566. 'tref',
  567. 'tspan',
  568. 'view',
  569. 'vkern',
  570. ]),
  571. We = Fe([
  572. 'feBlend',
  573. 'feColorMatrix',
  574. 'feComponentTransfer',
  575. 'feComposite',
  576. 'feConvolveMatrix',
  577. 'feDiffuseLighting',
  578. 'feDisplacementMap',
  579. 'feDistantLight',
  580. 'feFlood',
  581. 'feFuncA',
  582. 'feFuncB',
  583. 'feFuncG',
  584. 'feFuncR',
  585. 'feGaussianBlur',
  586. 'feMerge',
  587. 'feMergeNode',
  588. 'feMorphology',
  589. 'feOffset',
  590. 'fePointLight',
  591. 'feSpecularLighting',
  592. 'feSpotLight',
  593. 'feTile',
  594. 'feTurbulence',
  595. ]),
  596. Ve = Fe([
  597. 'animate',
  598. 'color-profile',
  599. 'cursor',
  600. 'discard',
  601. 'fedropshadow',
  602. 'feimage',
  603. 'font-face',
  604. 'font-face-format',
  605. 'font-face-name',
  606. 'font-face-src',
  607. 'font-face-uri',
  608. 'foreignobject',
  609. 'hatch',
  610. 'hatchpath',
  611. 'mesh',
  612. 'meshgradient',
  613. 'meshpatch',
  614. 'meshrow',
  615. 'missing-glyph',
  616. 'script',
  617. 'set',
  618. 'solidcolor',
  619. 'unknown',
  620. 'use',
  621. ]),
  622. Ye = Fe([
  623. 'math',
  624. 'menclose',
  625. 'merror',
  626. 'mfenced',
  627. 'mfrac',
  628. 'mglyph',
  629. 'mi',
  630. 'mlabeledtr',
  631. 'mmultiscripts',
  632. 'mn',
  633. 'mo',
  634. 'mover',
  635. 'mpadded',
  636. 'mphantom',
  637. 'mroot',
  638. 'mrow',
  639. 'ms',
  640. 'mspace',
  641. 'msqrt',
  642. 'mstyle',
  643. 'msub',
  644. 'msup',
  645. 'msubsup',
  646. 'mtable',
  647. 'mtd',
  648. 'mtext',
  649. 'mtr',
  650. 'munder',
  651. 'munderover',
  652. ]),
  653. Xe = Fe([
  654. 'maction',
  655. 'maligngroup',
  656. 'malignmark',
  657. 'mlongdiv',
  658. 'mscarries',
  659. 'mscarry',
  660. 'msgroup',
  661. 'mstack',
  662. 'msline',
  663. 'msrow',
  664. 'semantics',
  665. 'annotation',
  666. 'annotation-xml',
  667. 'mprescripts',
  668. 'none',
  669. ]),
  670. Ke = Fe(['#text']),
  671. Qe = Fe([
  672. 'accept',
  673. 'action',
  674. 'align',
  675. 'alt',
  676. 'autocapitalize',
  677. 'autocomplete',
  678. 'autopictureinpicture',
  679. 'autoplay',
  680. 'background',
  681. 'bgcolor',
  682. 'border',
  683. 'capture',
  684. 'cellpadding',
  685. 'cellspacing',
  686. 'checked',
  687. 'cite',
  688. 'class',
  689. 'clear',
  690. 'color',
  691. 'cols',
  692. 'colspan',
  693. 'controls',
  694. 'controlslist',
  695. 'coords',
  696. 'crossorigin',
  697. 'datetime',
  698. 'decoding',
  699. 'default',
  700. 'dir',
  701. 'disabled',
  702. 'disablepictureinpicture',
  703. 'disableremoteplayback',
  704. 'download',
  705. 'draggable',
  706. 'enctype',
  707. 'enterkeyhint',
  708. 'face',
  709. 'for',
  710. 'headers',
  711. 'height',
  712. 'hidden',
  713. 'high',
  714. 'href',
  715. 'hreflang',
  716. 'id',
  717. 'inputmode',
  718. 'integrity',
  719. 'ismap',
  720. 'kind',
  721. 'label',
  722. 'lang',
  723. 'list',
  724. 'loading',
  725. 'loop',
  726. 'low',
  727. 'max',
  728. 'maxlength',
  729. 'media',
  730. 'method',
  731. 'min',
  732. 'minlength',
  733. 'multiple',
  734. 'muted',
  735. 'name',
  736. 'noshade',
  737. 'novalidate',
  738. 'nowrap',
  739. 'open',
  740. 'optimum',
  741. 'pattern',
  742. 'placeholder',
  743. 'playsinline',
  744. 'poster',
  745. 'preload',
  746. 'pubdate',
  747. 'radiogroup',
  748. 'readonly',
  749. 'rel',
  750. 'required',
  751. 'rev',
  752. 'reversed',
  753. 'role',
  754. 'rows',
  755. 'rowspan',
  756. 'spellcheck',
  757. 'scope',
  758. 'selected',
  759. 'shape',
  760. 'size',
  761. 'sizes',
  762. 'span',
  763. 'srclang',
  764. 'start',
  765. 'src',
  766. 'srcset',
  767. 'step',
  768. 'style',
  769. 'summary',
  770. 'tabindex',
  771. 'title',
  772. 'translate',
  773. 'type',
  774. 'usemap',
  775. 'valign',
  776. 'value',
  777. 'width',
  778. 'xmlns',
  779. 'slot',
  780. ]),
  781. Je = Fe([
  782. 'accent-height',
  783. 'accumulate',
  784. 'additive',
  785. 'alignment-baseline',
  786. 'ascent',
  787. 'attributename',
  788. 'attributetype',
  789. 'azimuth',
  790. 'basefrequency',
  791. 'baseline-shift',
  792. 'begin',
  793. 'bias',
  794. 'by',
  795. 'class',
  796. 'clip',
  797. 'clippathunits',
  798. 'clip-path',
  799. 'clip-rule',
  800. 'color',
  801. 'color-interpolation',
  802. 'color-interpolation-filters',
  803. 'color-profile',
  804. 'color-rendering',
  805. 'cx',
  806. 'cy',
  807. 'd',
  808. 'dx',
  809. 'dy',
  810. 'diffuseconstant',
  811. 'direction',
  812. 'display',
  813. 'divisor',
  814. 'dur',
  815. 'edgemode',
  816. 'elevation',
  817. 'end',
  818. 'fill',
  819. 'fill-opacity',
  820. 'fill-rule',
  821. 'filter',
  822. 'filterunits',
  823. 'flood-color',
  824. 'flood-opacity',
  825. 'font-family',
  826. 'font-size',
  827. 'font-size-adjust',
  828. 'font-stretch',
  829. 'font-style',
  830. 'font-variant',
  831. 'font-weight',
  832. 'fx',
  833. 'fy',
  834. 'g1',
  835. 'g2',
  836. 'glyph-name',
  837. 'glyphref',
  838. 'gradientunits',
  839. 'gradienttransform',
  840. 'height',
  841. 'href',
  842. 'id',
  843. 'image-rendering',
  844. 'in',
  845. 'in2',
  846. 'k',
  847. 'k1',
  848. 'k2',
  849. 'k3',
  850. 'k4',
  851. 'kerning',
  852. 'keypoints',
  853. 'keysplines',
  854. 'keytimes',
  855. 'lang',
  856. 'lengthadjust',
  857. 'letter-spacing',
  858. 'kernelmatrix',
  859. 'kernelunitlength',
  860. 'lighting-color',
  861. 'local',
  862. 'marker-end',
  863. 'marker-mid',
  864. 'marker-start',
  865. 'markerheight',
  866. 'markerunits',
  867. 'markerwidth',
  868. 'maskcontentunits',
  869. 'maskunits',
  870. 'max',
  871. 'mask',
  872. 'media',
  873. 'method',
  874. 'mode',
  875. 'min',
  876. 'name',
  877. 'numoctaves',
  878. 'offset',
  879. 'operator',
  880. 'opacity',
  881. 'order',
  882. 'orient',
  883. 'orientation',
  884. 'origin',
  885. 'overflow',
  886. 'paint-order',
  887. 'path',
  888. 'pathlength',
  889. 'patterncontentunits',
  890. 'patterntransform',
  891. 'patternunits',
  892. 'points',
  893. 'preservealpha',
  894. 'preserveaspectratio',
  895. 'primitiveunits',
  896. 'r',
  897. 'rx',
  898. 'ry',
  899. 'radius',
  900. 'refx',
  901. 'refy',
  902. 'repeatcount',
  903. 'repeatdur',
  904. 'restart',
  905. 'result',
  906. 'rotate',
  907. 'scale',
  908. 'seed',
  909. 'shape-rendering',
  910. 'specularconstant',
  911. 'specularexponent',
  912. 'spreadmethod',
  913. 'startoffset',
  914. 'stddeviation',
  915. 'stitchtiles',
  916. 'stop-color',
  917. 'stop-opacity',
  918. 'stroke-dasharray',
  919. 'stroke-dashoffset',
  920. 'stroke-linecap',
  921. 'stroke-linejoin',
  922. 'stroke-miterlimit',
  923. 'stroke-opacity',
  924. 'stroke',
  925. 'stroke-width',
  926. 'style',
  927. 'surfacescale',
  928. 'systemlanguage',
  929. 'tabindex',
  930. 'targetx',
  931. 'targety',
  932. 'transform',
  933. 'text-anchor',
  934. 'text-decoration',
  935. 'text-rendering',
  936. 'textlength',
  937. 'type',
  938. 'u1',
  939. 'u2',
  940. 'unicode',
  941. 'values',
  942. 'viewbox',
  943. 'visibility',
  944. 'version',
  945. 'vert-adv-y',
  946. 'vert-origin-x',
  947. 'vert-origin-y',
  948. 'width',
  949. 'word-spacing',
  950. 'wrap',
  951. 'writing-mode',
  952. 'xchannelselector',
  953. 'ychannelselector',
  954. 'x',
  955. 'x1',
  956. 'x2',
  957. 'xmlns',
  958. 'y',
  959. 'y1',
  960. 'y2',
  961. 'z',
  962. 'zoomandpan',
  963. ]),
  964. et = Fe([
  965. 'accent',
  966. 'accentunder',
  967. 'align',
  968. 'bevelled',
  969. 'close',
  970. 'columnsalign',
  971. 'columnlines',
  972. 'columnspan',
  973. 'denomalign',
  974. 'depth',
  975. 'dir',
  976. 'display',
  977. 'displaystyle',
  978. 'encoding',
  979. 'fence',
  980. 'frame',
  981. 'height',
  982. 'href',
  983. 'id',
  984. 'largeop',
  985. 'length',
  986. 'linethickness',
  987. 'lspace',
  988. 'lquote',
  989. 'mathbackground',
  990. 'mathcolor',
  991. 'mathsize',
  992. 'mathvariant',
  993. 'maxsize',
  994. 'minsize',
  995. 'movablelimits',
  996. 'notation',
  997. 'numalign',
  998. 'open',
  999. 'rowalign',
  1000. 'rowlines',
  1001. 'rowspacing',
  1002. 'rowspan',
  1003. 'rspace',
  1004. 'rquote',
  1005. 'scriptlevel',
  1006. 'scriptminsize',
  1007. 'scriptsizemultiplier',
  1008. 'selection',
  1009. 'separator',
  1010. 'separators',
  1011. 'stretchy',
  1012. 'subscriptshift',
  1013. 'supscriptshift',
  1014. 'symmetric',
  1015. 'voffset',
  1016. 'width',
  1017. 'xmlns',
  1018. ]),
  1019. tt = Fe(['xlink:href', 'xml:id', 'xlink:title', 'xml:space', 'xmlns:xlink']),
  1020. nt = Q(/\{\{[\s\S]*|[\s\S]*\}\}/gm),
  1021. rt = Q(/<%[\s\S]*|[\s\S]*%>/gm),
  1022. it = Q(/^data-[\-\w.\u00B7-\uFFFF]/),
  1023. ot = Q(/^aria-[\-\w]+$/),
  1024. at = Q(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),
  1025. st = Q(/^(?:\w+script|data):/i),
  1026. lt = Q(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),
  1027. ct =
  1028. 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator
  1029. ? function (e) {
  1030. return typeof e
  1031. }
  1032. : function (e) {
  1033. return e && 'function' == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? 'symbol' : typeof e
  1034. }
  1035. function ut(e) {
  1036. if (Array.isArray(e)) {
  1037. for (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t]
  1038. return n
  1039. }
  1040. return Array.from(e)
  1041. }
  1042. var pt = function () {
  1043. return 'undefined' == typeof window ? null : window
  1044. },
  1045. ht = function (e, t) {
  1046. if ('object' !== (void 0 === e ? 'undefined' : ct(e)) || 'function' != typeof e.createPolicy) return null
  1047. var n = null,
  1048. r = 'data-tt-policy-suffix'
  1049. t.currentScript && t.currentScript.hasAttribute(r) && (n = t.currentScript.getAttribute(r))
  1050. var i = 'dompurify' + (n ? '#' + n : '')
  1051. try {
  1052. return e.createPolicy(i, {
  1053. createHTML: function (e) {
  1054. return e
  1055. },
  1056. })
  1057. } catch (e) {
  1058. return console.warn('TrustedTypes policy ' + i + ' could not be created.'), null
  1059. }
  1060. }
  1061. var ie,
  1062. oe,
  1063. ae = (function t(e) {
  1064. function c(e) {
  1065. return t(e)
  1066. }
  1067. var s = 0 < arguments.length && void 0 !== e ? e : pt()
  1068. if (((c.version = '2.3.1'), (c.removed = []), !s || !s.document || 9 !== s.document.nodeType)) return (c.isSupported = !1), c
  1069. var l = s.document,
  1070. o = s.document,
  1071. u = s.DocumentFragment,
  1072. n = s.HTMLTemplateElement,
  1073. p = s.Node,
  1074. a = s.Element,
  1075. r = s.NodeFilter,
  1076. i = s.NamedNodeMap,
  1077. h = void 0 === i ? s.NamedNodeMap || s.MozNamedAttrMap : i,
  1078. d = s.Text,
  1079. f = s.Comment,
  1080. g = s.DOMParser,
  1081. e = s.trustedTypes,
  1082. i = a.prototype,
  1083. m = Be(i, 'cloneNode'),
  1084. v = Be(i, 'nextSibling'),
  1085. y = Be(i, 'childNodes'),
  1086. b = Be(i, 'parentNode')
  1087. 'function' != typeof n || ((n = o.createElement('template')).content && n.content.ownerDocument && (o = n.content.ownerDocument))
  1088. var k = ht(e, l),
  1089. w = k && ee ? k.createHTML('') : '',
  1090. x = o.implementation,
  1091. _ = o.createNodeIterator,
  1092. S = o.createDocumentFragment,
  1093. A = o.getElementsByTagName,
  1094. T = l.importNode,
  1095. E = {}
  1096. try {
  1097. E = Ue(o).documentMode ? o.documentMode : {}
  1098. } catch (e) {}
  1099. var R = {}
  1100. c.isSupported = 'function' == typeof b && x && void 0 !== x.createHTMLDocument && 9 !== E
  1101. function O(e) {
  1102. ;(ge && ge === e) ||
  1103. ((e && 'object' === (void 0 === e ? 'undefined' : ct(e))) || (e = {}),
  1104. (e = Ue(e)),
  1105. (P = 'ALLOWED_TAGS' in e ? qe({}, e.ALLOWED_TAGS) : I),
  1106. (j = 'ALLOWED_ATTR' in e ? qe({}, e.ALLOWED_ATTR) : H),
  1107. (le = 'ADD_URI_SAFE_ATTR' in e ? qe(Ue(ce), e.ADD_URI_SAFE_ATTR) : ce),
  1108. (ae = 'ADD_DATA_URI_TAGS' in e ? qe(Ue(se), e.ADD_DATA_URI_TAGS) : se),
  1109. (ie = 'FORBID_CONTENTS' in e ? qe({}, e.FORBID_CONTENTS) : oe),
  1110. (q = 'FORBID_TAGS' in e ? qe({}, e.FORBID_TAGS) : {}),
  1111. (U = 'FORBID_ATTR' in e ? qe({}, e.FORBID_ATTR) : {}),
  1112. ($ = 'USE_PROFILES' in e && e.USE_PROFILES),
  1113. (B = !1 !== e.ALLOW_ARIA_ATTR),
  1114. (Z = !1 !== e.ALLOW_DATA_ATTR),
  1115. (G = e.ALLOW_UNKNOWN_PROTOCOLS || !1),
  1116. (W = e.SAFE_FOR_TEMPLATES || !1),
  1117. (V = e.WHOLE_DOCUMENT || !1),
  1118. (K = e.RETURN_DOM || !1),
  1119. (Q = e.RETURN_DOM_FRAGMENT || !1),
  1120. (J = !1 !== e.RETURN_DOM_IMPORT),
  1121. (ee = e.RETURN_TRUSTED_TYPE || !1),
  1122. (X = e.FORCE_BODY || !1),
  1123. (te = !1 !== e.SANITIZE_DOM),
  1124. (ne = !1 !== e.KEEP_CONTENT),
  1125. (re = e.IN_PLACE || !1),
  1126. (D = e.ALLOWED_URI_REGEXP || D),
  1127. (de = e.NAMESPACE || he),
  1128. W && (Z = !1),
  1129. Q && (K = !0),
  1130. $ &&
  1131. ((P = qe({}, [].concat(ut(Ke)))),
  1132. (j = []),
  1133. !0 === $.html && (qe(P, Ze), qe(j, Qe)),
  1134. !0 === $.svg && (qe(P, Ge), qe(j, Je), qe(j, tt)),
  1135. !0 === $.svgFilters && (qe(P, We), qe(j, Je), qe(j, tt)),
  1136. !0 === $.mathMl && (qe(P, Ye), qe(j, et), qe(j, tt))),
  1137. e.ADD_TAGS && (P === I && (P = Ue(P)), qe(P, e.ADD_TAGS)),
  1138. e.ADD_ATTR && (j === H && (j = Ue(j)), qe(j, e.ADD_ATTR)),
  1139. e.ADD_URI_SAFE_ATTR && qe(le, e.ADD_URI_SAFE_ATTR),
  1140. e.FORBID_CONTENTS && (ie === oe && (ie = Ue(ie)), qe(ie, e.FORBID_CONTENTS)),
  1141. ne && (P['#text'] = !0),
  1142. V && qe(P, ['html', 'head', 'body']),
  1143. P.table && (qe(P, ['tbody']), delete q.tbody),
  1144. Fe && Fe(e),
  1145. (ge = e))
  1146. }
  1147. var $,
  1148. F = nt,
  1149. C = rt,
  1150. L = it,
  1151. z = ot,
  1152. N = st,
  1153. M = lt,
  1154. D = at,
  1155. P = null,
  1156. I = qe({}, [].concat(ut(Ze), ut(Ge), ut(We), ut(Ye), ut(Ke))),
  1157. j = null,
  1158. H = qe({}, [].concat(ut(Qe), ut(Je), ut(et), ut(tt))),
  1159. q = null,
  1160. U = null,
  1161. B = !0,
  1162. Z = !0,
  1163. G = !1,
  1164. W = !1,
  1165. V = !1,
  1166. Y = !1,
  1167. X = !1,
  1168. K = !1,
  1169. Q = !1,
  1170. J = !0,
  1171. ee = !1,
  1172. te = !0,
  1173. ne = !0,
  1174. re = !1,
  1175. ie = null,
  1176. oe = qe({}, [
  1177. 'annotation-xml',
  1178. 'audio',
  1179. 'colgroup',
  1180. 'desc',
  1181. 'foreignobject',
  1182. 'head',
  1183. 'iframe',
  1184. 'math',
  1185. 'mi',
  1186. 'mn',
  1187. 'mo',
  1188. 'ms',
  1189. 'mtext',
  1190. 'noembed',
  1191. 'noframes',
  1192. 'noscript',
  1193. 'plaintext',
  1194. 'script',
  1195. 'style',
  1196. 'svg',
  1197. 'template',
  1198. 'thead',
  1199. 'title',
  1200. 'video',
  1201. 'xmp',
  1202. ]),
  1203. ae = null,
  1204. se = qe({}, ['audio', 'video', 'img', 'source', 'image', 'track']),
  1205. le = null,
  1206. ce = qe({}, ['alt', 'class', 'for', 'id', 'label', 'name', 'pattern', 'placeholder', 'role', 'summary', 'title', 'value', 'style', 'xmlns']),
  1207. ue = 'http://www.w3.org/1998/Math/MathML',
  1208. pe = 'http://www.w3.org/2000/svg',
  1209. he = 'http://www.w3.org/1999/xhtml',
  1210. de = he,
  1211. fe = !1,
  1212. ge = null,
  1213. me = o.createElement('form'),
  1214. ve = qe({}, ['mi', 'mo', 'mn', 'ms', 'mtext']),
  1215. ye = qe({}, ['foreignobject', 'desc', 'title', 'annotation-xml']),
  1216. be = qe({}, Ge)
  1217. qe(be, We), qe(be, Ve)
  1218. var ke = qe({}, Ye)
  1219. qe(ke, Xe)
  1220. function we(t) {
  1221. ze(c.removed, { element: t })
  1222. try {
  1223. t.parentNode.removeChild(t)
  1224. } catch (e) {
  1225. try {
  1226. t.outerHTML = w
  1227. } catch (e) {
  1228. t.remove()
  1229. }
  1230. }
  1231. }
  1232. function xe(e, t) {
  1233. try {
  1234. ze(c.removed, { attribute: t.getAttributeNode(e), from: t })
  1235. } catch (e) {
  1236. ze(c.removed, { attribute: null, from: t })
  1237. }
  1238. if ((t.removeAttribute(e), 'is' === e && !j[e]))
  1239. if (K || Q)
  1240. try {
  1241. we(t)
  1242. } catch (e) {}
  1243. else
  1244. try {
  1245. t.setAttribute(e, '')
  1246. } catch (e) {}
  1247. }
  1248. function _e(e) {
  1249. var t = void 0,
  1250. n = void 0
  1251. X ? (e = '<remove></remove>' + e) : (n = (i = Me(e, /^[\r\n\t ]+/)) && i[0])
  1252. var r = k ? k.createHTML(e) : e
  1253. if (de === he)
  1254. try {
  1255. t = new g().parseFromString(r, 'text/html')
  1256. } catch (e) {}
  1257. if (!t || !t.documentElement) {
  1258. t = x.createDocument(de, 'template', null)
  1259. try {
  1260. t.documentElement.innerHTML = fe ? '' : r
  1261. } catch (e) {}
  1262. }
  1263. var i = t.body || t.documentElement
  1264. return e && n && i.insertBefore(o.createTextNode(n), i.childNodes[0] || null), de === he ? A.call(t, V ? 'html' : 'body')[0] : V ? t.documentElement : i
  1265. }
  1266. function Se(e) {
  1267. return _.call(e.ownerDocument || e, e, r.SHOW_ELEMENT | r.SHOW_COMMENT | r.SHOW_TEXT, null, !1)
  1268. }
  1269. function Ae(e) {
  1270. return 'object' === (void 0 === p ? 'undefined' : ct(p))
  1271. ? e instanceof p
  1272. : e && 'object' === (void 0 === e ? 'undefined' : ct(e)) && 'number' == typeof e.nodeType && 'string' == typeof e.nodeName
  1273. }
  1274. function Te(e, t, n) {
  1275. R[e] &&
  1276. Ce(R[e], function (e) {
  1277. e.call(c, t, n, ge)
  1278. })
  1279. }
  1280. function Ee(e) {
  1281. var t
  1282. if (
  1283. (Te('beforeSanitizeElements', e, null),
  1284. !(
  1285. (n = e) instanceof d ||
  1286. n instanceof f ||
  1287. ('string' == typeof n.nodeName &&
  1288. 'string' == typeof n.textContent &&
  1289. 'function' == typeof n.removeChild &&
  1290. n.attributes instanceof h &&
  1291. 'function' == typeof n.removeAttribute &&
  1292. 'function' == typeof n.setAttribute &&
  1293. 'string' == typeof n.namespaceURI &&
  1294. 'function' == typeof n.insertBefore)
  1295. ))
  1296. )
  1297. return we(e), 1
  1298. if (Me(e.nodeName, /[\u0080-\uFFFF]/)) return we(e), 1
  1299. var n = Ne(e.nodeName)
  1300. if (
  1301. (Te('uponSanitizeElement', e, { tagName: n, allowedTags: P }),
  1302. !Ae(e.firstElementChild) && (!Ae(e.content) || !Ae(e.content.firstElementChild)) && je(/<[/\w]/g, e.innerHTML) && je(/<[/\w]/g, e.textContent))
  1303. )
  1304. return we(e), 1
  1305. if ('select' === n && je(/<template/i, e.innerHTML)) return we(e), 1
  1306. if (P[n] && !q[n])
  1307. return (e instanceof a &&
  1308. !(function (e) {
  1309. var t = b(e)
  1310. ;(t && t.tagName) || (t = { namespaceURI: he, tagName: 'template' })
  1311. var n = Ne(e.tagName),
  1312. r = Ne(t.tagName)
  1313. return e.namespaceURI === pe
  1314. ? t.namespaceURI === he
  1315. ? 'svg' === n
  1316. : t.namespaceURI === ue
  1317. ? 'svg' === n && ('annotation-xml' === r || ve[r])
  1318. : Boolean(be[n])
  1319. : e.namespaceURI === ue
  1320. ? t.namespaceURI === he
  1321. ? 'math' === n
  1322. : t.namespaceURI === pe
  1323. ? 'math' === n && ye[r]
  1324. : Boolean(ke[n])
  1325. : e.namespaceURI === he &&
  1326. (t.namespaceURI !== pe || ye[r]) &&
  1327. (t.namespaceURI !== ue || ve[r]) &&
  1328. ((r = qe({}, ['title', 'style', 'font', 'a', 'script'])), !ke[n] && (r[n] || !be[n]))
  1329. })(e)) ||
  1330. (('noscript' === n || 'noembed' === n) && je(/<\/no(script|embed)/i, e.innerHTML))
  1331. ? (we(e), 1)
  1332. : (W &&
  1333. 3 === e.nodeType &&
  1334. ((t = e.textContent), (t = De(t, F, ' ')), (t = De(t, C, ' ')), e.textContent !== t && (ze(c.removed, { element: e.cloneNode() }), (e.textContent = t))),
  1335. Te('afterSanitizeElements', e, null),
  1336. 0)
  1337. if (ne && !ie[n]) {
  1338. var r = b(e) || e.parentNode,
  1339. i = y(e) || e.childNodes
  1340. if (i && r) for (var o = i.length - 1; 0 <= o; --o) r.insertBefore(m(i[o], !0), v(e))
  1341. }
  1342. return we(e), 1
  1343. }
  1344. function Re(e, t, n) {
  1345. if (te && ('id' === t || 'name' === t) && (n in o || n in me)) return !1
  1346. if ((!Z || U[t] || !je(L, t)) && (!B || !je(z, t))) {
  1347. if (!j[t] || U[t]) return !1
  1348. if (!le[t] && !je(D, De(n, M, '')) && (('src' !== t && 'xlink:href' !== t && 'href' !== t) || 'script' === e || 0 !== Pe(n, 'data:') || !ae[e]) && (!G || je(N, De(n, M, ''))) && n)
  1349. return !1
  1350. }
  1351. return !0
  1352. }
  1353. function Oe(e) {
  1354. var t = void 0,
  1355. n = void 0
  1356. Te('beforeSanitizeAttributes', e, null)
  1357. var r = e.attributes
  1358. if (r) {
  1359. for (var i = { attrName: '', attrValue: '', keepAttr: !0, allowedAttributes: j }, n = r.length; n--; ) {
  1360. var o = (l = r[n]).name,
  1361. a = l.namespaceURI,
  1362. t = Ie(l.value),
  1363. s = Ne(o)
  1364. if (
  1365. ((i.attrName = s),
  1366. (i.attrValue = t),
  1367. (i.keepAttr = !0),
  1368. (i.forceKeepAttr = void 0),
  1369. Te('uponSanitizeAttribute', e, i),
  1370. (t = i.attrValue),
  1371. !i.forceKeepAttr && (xe(o, e), i.keepAttr))
  1372. )
  1373. if (je(/\/>/i, t)) xe(o, e)
  1374. else {
  1375. W && ((t = De(t, F, ' ')), (t = De(t, C, ' ')))
  1376. var l = e.nodeName.toLowerCase()
  1377. if (Re(l, s, t))
  1378. try {
  1379. a ? e.setAttributeNS(a, o, t) : e.setAttribute(o, t), Le(c.removed)
  1380. } catch (e) {}
  1381. }
  1382. }
  1383. Te('afterSanitizeAttributes', e, null)
  1384. }
  1385. }
  1386. function $e(e) {
  1387. var t,
  1388. n = Se(e)
  1389. for (Te('beforeSanitizeShadowDOM', e, null); (t = n.nextNode()); ) Te('uponSanitizeShadowNode', t, null), Ee(t) || (t.content instanceof u && $e(t.content), Oe(t))
  1390. Te('afterSanitizeShadowDOM', e, null)
  1391. }
  1392. return (
  1393. (c.sanitize = function (e, t) {
  1394. var n,
  1395. r = void 0,
  1396. i = void 0,
  1397. o = void 0
  1398. if (((fe = !e) && (e = '\x3c!--\x3e'), 'string' != typeof e && !Ae(e))) {
  1399. if ('function' != typeof e.toString) throw He('toString is not a function')
  1400. if ('string' != typeof (e = e.toString())) throw He('dirty is not a string, aborting')
  1401. }
  1402. if (!c.isSupported) {
  1403. if ('object' === ct(s.toStaticHTML) || 'function' == typeof s.toStaticHTML) {
  1404. if ('string' == typeof e) return s.toStaticHTML(e)
  1405. if (Ae(e)) return s.toStaticHTML(e.outerHTML)
  1406. }
  1407. return e
  1408. }
  1409. if ((Y || O(t), (c.removed = []), 'string' == typeof e && (re = !1), !re))
  1410. if (e instanceof p)
  1411. (1 === (t = (r = _e('\x3c!----\x3e')).ownerDocument.importNode(e, !0)).nodeType && 'BODY' === t.nodeName) || 'HTML' === t.nodeName ? (r = t) : r.appendChild(t)
  1412. else {
  1413. if (!K && !W && !V && -1 === e.indexOf('<')) return k && ee ? k.createHTML(e) : e
  1414. if (!(r = _e(e))) return K ? null : w
  1415. }
  1416. r && X && we(r.firstChild)
  1417. for (var a = Se(re ? e : r); (n = a.nextNode()); ) (3 === n.nodeType && n === i) || Ee(n) || (n.content instanceof u && $e(n.content), Oe(n), (i = n))
  1418. if (((i = null), re)) return e
  1419. if (K) {
  1420. if (Q) for (o = S.call(r.ownerDocument); r.firstChild; ) o.appendChild(r.firstChild)
  1421. else o = r
  1422. return J && (o = T.call(l, o, !0)), o
  1423. }
  1424. return (e = V ? r.outerHTML : r.innerHTML), W && ((e = De(e, F, ' ')), (e = De(e, C, ' '))), k && ee ? k.createHTML(e) : e
  1425. }),
  1426. (c.setConfig = function (e) {
  1427. O(e), (Y = !0)
  1428. }),
  1429. (c.clearConfig = function () {
  1430. ;(ge = null), (Y = !1)
  1431. }),
  1432. (c.isValidAttribute = function (e, t, n) {
  1433. return ge || O({}), (e = Ne(e)), (t = Ne(t)), Re(e, t, n)
  1434. }),
  1435. (c.addHook = function (e, t) {
  1436. 'function' == typeof t && ((R[e] = R[e] || []), ze(R[e], t))
  1437. }),
  1438. (c.removeHook = function (e) {
  1439. R[e] && Le(R[e])
  1440. }),
  1441. (c.removeHooks = function (e) {
  1442. R[e] && (R[e] = [])
  1443. }),
  1444. (c.removeAllHooks = function () {
  1445. R = {}
  1446. }),
  1447. c
  1448. )
  1449. })()
  1450. function se(e) {
  1451. var t,
  1452. n = e.loaded,
  1453. r = e.total,
  1454. i = e.step
  1455. ie || ((e = v('div')).classList.add('progress'), a(g, e), (ie = e)),
  1456. (t = i ? (80 < (t = parseInt(ie.style.width || 0, 10) + i) ? 80 : t) : Math.floor((n / r) * 100)),
  1457. (ie.style.opacity = 1),
  1458. (ie.style.width = 95 <= t ? '100%' : t + '%'),
  1459. 95 <= t &&
  1460. (clearTimeout(oe),
  1461. (oe = setTimeout(function (e) {
  1462. ;(ie.style.opacity = 0), (ie.style.width = '0%')
  1463. }, 200)))
  1464. }
  1465. var le = {}
  1466. function ce(i, e, t) {
  1467. void 0 === e && (e = !1), void 0 === t && (t = {})
  1468. function o() {
  1469. a.addEventListener.apply(a, arguments)
  1470. }
  1471. var n,
  1472. a = new XMLHttpRequest(),
  1473. r = le[i]
  1474. if (r)
  1475. return {
  1476. then: function (e) {
  1477. return e(r.content, r.opt)
  1478. },
  1479. abort: u,
  1480. }
  1481. for (n in (a.open('GET', i), t)) l.call(t, n) && a.setRequestHeader(n, t[n])
  1482. return (
  1483. a.send(),
  1484. {
  1485. then: function (t, n) {
  1486. var r
  1487. void 0 === n && (n = u),
  1488. e &&
  1489. ((r = setInterval(function (e) {
  1490. return se({ step: Math.floor(5 * Math.random() + 1) })
  1491. }, 500)),
  1492. o('progress', se),
  1493. o('loadend', function (e) {
  1494. se(e), clearInterval(r)
  1495. })),
  1496. o('error', n),
  1497. o('load', function (e) {
  1498. e = e.target
  1499. 400 <= e.status ? n(e) : ((e = le[i] = { content: e.response, opt: { updatedAt: a.getResponseHeader('last-modified') } }), t(e.content, e.opt))
  1500. })
  1501. },
  1502. abort: function (e) {
  1503. return 4 !== a.readyState && a.abort()
  1504. },
  1505. }
  1506. )
  1507. }
  1508. function ue(e, t) {
  1509. e.innerHTML = e.innerHTML.replace(/var\(\s*--theme-color.*?\)/g, t)
  1510. }
  1511. var pe = f.title
  1512. function he() {
  1513. var e,
  1514. t = d('section.cover')
  1515. t && ((e = t.getBoundingClientRect().height), window.pageYOffset >= e || t.classList.contains('hidden') ? S(g, 'add', 'sticky') : S(g, 'remove', 'sticky'))
  1516. }
  1517. function de(e, t, r, n) {
  1518. var i = []
  1519. null != (t = d(t)) && (i = k(t, 'a'))
  1520. var o,
  1521. a = decodeURI(e.toURL(e.getCurrentPath()))
  1522. return (
  1523. i
  1524. .sort(function (e, t) {
  1525. return t.href.length - e.href.length
  1526. })
  1527. .forEach(function (e) {
  1528. var t = decodeURI(e.getAttribute('href')),
  1529. n = r ? e.parentNode : e
  1530. ;(e.title = e.title || e.innerText), 0 !== a.indexOf(t) || o ? S(n, 'remove', 'active') : ((o = e), S(n, 'add', 'active'))
  1531. }),
  1532. n && (f.title = o ? o.title || o.innerText + ' - ' + pe : pe),
  1533. o
  1534. )
  1535. }
  1536. function fe(e, t) {
  1537. for (var n = 0; n < t.length; n++) {
  1538. var r = t[n]
  1539. ;(r.enumerable = r.enumerable || !1), (r.configurable = !0), 'value' in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
  1540. }
  1541. }
  1542. var ge =
  1543. ((function (e, t, n) {
  1544. return t && fe(e.prototype, t), n && fe(e, n), e
  1545. })(me, [
  1546. {
  1547. key: 'getIntermediateValue',
  1548. value: function (e) {
  1549. return this.decimal ? e : Math.round(e)
  1550. },
  1551. },
  1552. {
  1553. key: 'getFinalValue',
  1554. value: function () {
  1555. return this.end
  1556. },
  1557. },
  1558. ]),
  1559. me)
  1560. function me() {
  1561. var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {}
  1562. !(function (e, t) {
  1563. if (!(e instanceof t)) throw new TypeError('Cannot call a class as a function')
  1564. })(this, me),
  1565. (this.start = e.start),
  1566. (this.end = e.end),
  1567. (this.decimal = e.decimal)
  1568. }
  1569. function ve(e, t) {
  1570. for (var n = 0; n < t.length; n++) {
  1571. var r = t[n]
  1572. ;(r.enumerable = r.enumerable || !1), (r.configurable = !0), 'value' in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
  1573. }
  1574. }
  1575. var ye =
  1576. ((function (e, t, n) {
  1577. return t && ve(e.prototype, t), n && ve(e, n), e
  1578. })(be, [
  1579. {
  1580. key: 'begin',
  1581. value: function () {
  1582. return this.isRunning || this.next === this.end || (this.frame = window.requestAnimationFrame(this._tick.bind(this))), this
  1583. },
  1584. },
  1585. {
  1586. key: 'stop',
  1587. value: function () {
  1588. return window.cancelAnimationFrame(this.frame), (this.isRunning = !1), (this.frame = null), (this.timeStart = null), (this.next = null), this
  1589. },
  1590. },
  1591. {
  1592. key: 'on',
  1593. value: function (e, t) {
  1594. return (this.events[e] = this.events[e] || []), this.events[e].push(t), this
  1595. },
  1596. },
  1597. {
  1598. key: '_emit',
  1599. value: function (e, t) {
  1600. var n = this,
  1601. e = this.events[e]
  1602. e &&
  1603. e.forEach(function (e) {
  1604. return e.call(n, t)
  1605. })
  1606. },
  1607. },
  1608. {
  1609. key: '_tick',
  1610. value: function (e) {
  1611. this.isRunning = !0
  1612. var t = this.next || this.start
  1613. this.timeStart || (this.timeStart = e),
  1614. (this.timeElapsed = e - this.timeStart),
  1615. (this.next = this.ease(this.timeElapsed, this.start, this.end - this.start, this.duration)),
  1616. this._shouldTick(t)
  1617. ? (this._emit('tick', this.tweener.getIntermediateValue(this.next)), (this.frame = window.requestAnimationFrame(this._tick.bind(this))))
  1618. : (this._emit('tick', this.tweener.getFinalValue()), this._emit('done', null))
  1619. },
  1620. },
  1621. {
  1622. key: '_shouldTick',
  1623. value: function (e) {
  1624. return { up: this.next < this.end && e <= this.next, down: this.next > this.end && e >= this.next }[this.direction]
  1625. },
  1626. },
  1627. {
  1628. key: '_defaultEase',
  1629. value: function (e, t, n, r) {
  1630. return (e /= r / 2) < 1 ? (n / 2) * e * e + t : (-n / 2) * (--e * (e - 2) - 1) + t
  1631. },
  1632. },
  1633. ]),
  1634. be)
  1635. function be() {
  1636. var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {}
  1637. !(function (e, t) {
  1638. if (!(e instanceof t)) throw new TypeError('Cannot call a class as a function')
  1639. })(this, be),
  1640. (this.duration = e.duration || 1e3),
  1641. (this.ease = e.easing || this._defaultEase),
  1642. (this.tweener = e.tweener || new ge(e)),
  1643. (this.start = this.tweener.start),
  1644. (this.end = this.tweener.end),
  1645. (this.frame = null),
  1646. (this.next = null),
  1647. (this.isRunning = !1),
  1648. (this.events = {}),
  1649. (this.direction = this.start < this.end ? 'up' : 'down')
  1650. }
  1651. var ke = document.currentScript
  1652. function we(e) {
  1653. var t,
  1654. n = y(
  1655. {
  1656. el: '#app',
  1657. repo: '',
  1658. maxLevel: 6,
  1659. subMaxLevel: 0,
  1660. loadSidebar: null,
  1661. loadNavbar: null,
  1662. homepage: 'README.md',
  1663. coverpage: '',
  1664. basePath: '',
  1665. auto2top: !1,
  1666. name: '',
  1667. themeColor: '',
  1668. nameLink: window.location.pathname,
  1669. autoHeader: !1,
  1670. executeScript: null,
  1671. noEmoji: !1,
  1672. ga: '',
  1673. ext: '.md',
  1674. mergeNavbar: !1,
  1675. formatUpdated: '',
  1676. externalLinkTarget: '_blank',
  1677. cornerExternalLinkTarget: '_blank',
  1678. externalLinkRel: 'noopener',
  1679. routerMode: 'hash',
  1680. noCompileLinks: [],
  1681. crossOriginLinks: [],
  1682. relativePath: !1,
  1683. topMargin: 0,
  1684. },
  1685. 'function' == typeof window.$docsify ? window.$docsify(e) : window.$docsify
  1686. ),
  1687. r =
  1688. ke ||
  1689. [].slice.call(document.getElementsByTagName('script')).filter(function (e) {
  1690. return /docsify\./.test(e.src)
  1691. })[0]
  1692. if (r)
  1693. for (var i in n) {
  1694. !l.call(n, i) || (c((t = r.getAttribute('data-' + o(i)))) && (n[i] = '' === t || t))
  1695. }
  1696. return (
  1697. !0 === n.loadSidebar && (n.loadSidebar = '_sidebar' + n.ext),
  1698. !0 === n.loadNavbar && (n.loadNavbar = '_navbar' + n.ext),
  1699. !0 === n.coverpage && (n.coverpage = '_coverpage' + n.ext),
  1700. !0 === n.repo && (n.repo = ''),
  1701. !0 === n.name && (n.name = ''),
  1702. (window.$docsify = n)
  1703. )
  1704. }
  1705. var xe = {},
  1706. _e = !1,
  1707. Se = null,
  1708. Ae = !0,
  1709. Te = 0
  1710. function Ee(e) {
  1711. if (Ae) {
  1712. for (
  1713. var t,
  1714. n,
  1715. r = d('.sidebar'),
  1716. i = k('.anchor'),
  1717. o = b(r, '.sidebar-nav'),
  1718. a = b(r, 'li.active'),
  1719. s = document.documentElement,
  1720. l = ((s && s.scrollTop) || document.body.scrollTop) - Te,
  1721. c = 0,
  1722. u = i.length;
  1723. c < u;
  1724. c += 1
  1725. ) {
  1726. var p = i[c]
  1727. if (p.offsetTop > l) {
  1728. t = t || p
  1729. break
  1730. }
  1731. t = p
  1732. }
  1733. !t ||
  1734. ((n = xe[Re(e, t.getAttribute('data-id'))]) &&
  1735. n !== a &&
  1736. (a && a.classList.remove('active'),
  1737. n.classList.add('active'),
  1738. (a = n),
  1739. !_e &&
  1740. g.classList.contains('sticky') &&
  1741. ((s = r.clientHeight),
  1742. (e = a.offsetTop + a.clientHeight + 40),
  1743. (n = a.offsetTop >= o.scrollTop && e <= o.scrollTop + s),
  1744. (a = +e < s),
  1745. (r.scrollTop = n ? o.scrollTop : a ? 0 : e - s))))
  1746. }
  1747. }
  1748. function Re(e, t) {
  1749. return decodeURIComponent(e) + '?id=' + decodeURIComponent(t)
  1750. }
  1751. function Oe(e, t) {
  1752. var n, r
  1753. t &&
  1754. ((r = we().topMargin),
  1755. (n = b('#' + t)) &&
  1756. ((n = n),
  1757. void 0 === (r = r) && (r = 0),
  1758. Se && Se.stop(),
  1759. (Ae = !1),
  1760. (Se = new ye({ start: window.pageYOffset, end: Math.round(n.getBoundingClientRect().top) + window.pageYOffset - r, duration: 500 })
  1761. .on('tick', function (e) {
  1762. return window.scrollTo(0, e)
  1763. })
  1764. .on('done', function () {
  1765. ;(Ae = !0), (Se = null)
  1766. })
  1767. .begin())),
  1768. (e = xe[Re(e, t)]),
  1769. (t = b(d('.sidebar'), 'li.active')) && t.classList.remove('active'),
  1770. e && e.classList.add('active'))
  1771. }
  1772. var $e = f.scrollingElement || f.documentElement
  1773. var dt = 'undefined' != typeof globalThis ? globalThis : 'undefined' != typeof window ? window : 'undefined' != typeof global ? global : 'undefined' != typeof self ? self : {}
  1774. function ft(e, t) {
  1775. return e((t = { exports: {} }), t.exports), t.exports
  1776. }
  1777. function gt(e) {
  1778. return wt[e]
  1779. }
  1780. var mt = ft(function (t) {
  1781. function e() {
  1782. return {
  1783. baseUrl: null,
  1784. breaks: !1,
  1785. gfm: !0,
  1786. headerIds: !0,
  1787. headerPrefix: '',
  1788. highlight: null,
  1789. langPrefix: 'language-',
  1790. mangle: !0,
  1791. pedantic: !1,
  1792. renderer: null,
  1793. sanitize: !1,
  1794. sanitizer: null,
  1795. silent: !1,
  1796. smartLists: !1,
  1797. smartypants: !1,
  1798. tokenizer: null,
  1799. walkTokens: null,
  1800. xhtml: !1,
  1801. }
  1802. }
  1803. t.exports = {
  1804. defaults: e(),
  1805. getDefaults: e,
  1806. changeDefaults: function (e) {
  1807. t.exports.defaults = e
  1808. },
  1809. }
  1810. }),
  1811. vt = (mt.defaults, mt.getDefaults, mt.changeDefaults, /[&<>"']/),
  1812. yt = /[&<>"']/g,
  1813. bt = /[<>"']|&(?!#?\w+;)/,
  1814. kt = /[<>"']|&(?!#?\w+;)/g,
  1815. wt = { '&': '&amp;', '<': '&lt;', '>': '&gt;', '"': '&quot;', "'": '&#39;' }
  1816. var xt = /&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi
  1817. function _t(e) {
  1818. return e.replace(xt, function (e, t) {
  1819. return 'colon' === (t = t.toLowerCase()) ? ':' : '#' === t.charAt(0) ? ('x' === t.charAt(1) ? String.fromCharCode(parseInt(t.substring(2), 16)) : String.fromCharCode(+t.substring(1))) : ''
  1820. })
  1821. }
  1822. var St = /(^|[^\[])\^/g
  1823. var At = /[^\w:]/g,
  1824. Tt = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i
  1825. var Et = {},
  1826. Rt = /^[^:]+:\/*[^/]*$/,
  1827. Ot = /^([^:]+:)[\s\S]*$/,
  1828. $t = /^([^:]+:\/*[^/]*)[\s\S]*$/
  1829. function Ft(e, t) {
  1830. Et[' ' + e] || (Rt.test(e) ? (Et[' ' + e] = e + '/') : (Et[' ' + e] = Ct(e, '/', !0)))
  1831. var n = -1 === (e = Et[' ' + e]).indexOf(':')
  1832. return '//' === t.substring(0, 2) ? (n ? t : e.replace(Ot, '$1') + t) : '/' === t.charAt(0) ? (n ? t : e.replace($t, '$1') + t) : e + t
  1833. }
  1834. function Ct(e, t, n) {
  1835. var r = e.length
  1836. if (0 === r) return ''
  1837. for (var i = 0; i < r; ) {
  1838. var o = e.charAt(r - i - 1)
  1839. if (o !== t || n) {
  1840. if (o === t || !n) break
  1841. i++
  1842. } else i++
  1843. }
  1844. return e.substr(0, r - i)
  1845. }
  1846. var Lt = function (e, t) {
  1847. if (t) {
  1848. if (vt.test(e)) return e.replace(yt, gt)
  1849. } else if (bt.test(e)) return e.replace(kt, gt)
  1850. return e
  1851. },
  1852. zt = _t,
  1853. Nt = function (n, e) {
  1854. ;(n = n.source || n), (e = e || '')
  1855. var r = {
  1856. replace: function (e, t) {
  1857. return (t = (t = t.source || t).replace(St, '$1')), (n = n.replace(e, t)), r
  1858. },
  1859. getRegex: function () {
  1860. return new RegExp(n, e)
  1861. },
  1862. }
  1863. return r
  1864. },
  1865. Mt = function (e, t, n) {
  1866. if (e) {
  1867. var r
  1868. try {
  1869. r = decodeURIComponent(_t(n)).replace(At, '').toLowerCase()
  1870. } catch (e) {
  1871. return null
  1872. }
  1873. if (0 === r.indexOf('javascript:') || 0 === r.indexOf('vbscript:') || 0 === r.indexOf('data:')) return null
  1874. }
  1875. t && !Tt.test(n) && (n = Ft(t, n))
  1876. try {
  1877. n = encodeURI(n).replace(/%25/g, '%')
  1878. } catch (e) {
  1879. return null
  1880. }
  1881. return n
  1882. },
  1883. Dt = { exec: function () {} },
  1884. Pt = function (e) {
  1885. for (var t, n, r = arguments, i = 1; i < arguments.length; i++) for (n in (t = r[i])) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n])
  1886. return e
  1887. },
  1888. It = function (e, t) {
  1889. var n = e
  1890. .replace(/\|/g, function (e, t, n) {
  1891. for (var r = !1, i = t; 0 <= --i && '\\' === n[i]; ) r = !r
  1892. return r ? '|' : ' |'
  1893. })
  1894. .split(/ \|/),
  1895. r = 0
  1896. if (n.length > t) n.splice(t)
  1897. else for (; n.length < t; ) n.push('')
  1898. for (; r < n.length; r++) n[r] = n[r].trim().replace(/\\\|/g, '|')
  1899. return n
  1900. },
  1901. I = function (e, t) {
  1902. if (-1 === e.indexOf(t[1])) return -1
  1903. for (var n = e.length, r = 0, i = 0; i < n; i++)
  1904. if ('\\' === e[i]) i++
  1905. else if (e[i] === t[0]) r++
  1906. else if (e[i] === t[1] && --r < 0) return i
  1907. return -1
  1908. },
  1909. ee = function (e) {
  1910. e &&
  1911. e.sanitize &&
  1912. !e.silent &&
  1913. console.warn(
  1914. 'marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options'
  1915. )
  1916. },
  1917. Q = function (e, t) {
  1918. if (t < 1) return ''
  1919. for (var n = ''; 1 < t; ) 1 & t && (n += e), (t >>= 1), (e += e)
  1920. return n + e
  1921. },
  1922. jt = mt.defaults,
  1923. Ht = Ct,
  1924. qt = It,
  1925. Ut = Lt,
  1926. Bt = I
  1927. function Zt(e, t, n) {
  1928. var r = t.href,
  1929. i = t.title ? Ut(t.title) : null,
  1930. t = e[1].replace(/\\([\[\]])/g, '$1')
  1931. return '!' !== e[0].charAt(0) ? { type: 'link', raw: n, href: r, title: i, text: t } : { type: 'image', raw: n, href: r, title: i, text: Ut(t) }
  1932. }
  1933. var Gt = (function () {
  1934. function e(e) {
  1935. this.options = e || jt
  1936. }
  1937. return (
  1938. (e.prototype.space = function (e) {
  1939. e = this.rules.block.newline.exec(e)
  1940. if (e) return 1 < e[0].length ? { type: 'space', raw: e[0] } : { raw: '\n' }
  1941. }),
  1942. (e.prototype.code = function (e, t) {
  1943. e = this.rules.block.code.exec(e)
  1944. if (e) {
  1945. t = t[t.length - 1]
  1946. if (t && 'paragraph' === t.type) return { raw: e[0], text: e[0].trimRight() }
  1947. t = e[0].replace(/^ {1,4}/gm, '')
  1948. return { type: 'code', raw: e[0], codeBlockStyle: 'indented', text: this.options.pedantic ? t : Ht(t, '\n') }
  1949. }
  1950. }),
  1951. (e.prototype.fences = function (e) {
  1952. var t = this.rules.block.fences.exec(e)
  1953. if (t) {
  1954. var n = t[0],
  1955. e = (function (e, t) {
  1956. if (null === (e = e.match(/^(\s+)(?:```)/))) return t
  1957. var n = e[1]
  1958. return t
  1959. .split('\n')
  1960. .map(function (e) {
  1961. var t = e.match(/^\s+/)
  1962. return null !== t && t[0].length >= n.length ? e.slice(n.length) : e
  1963. })
  1964. .join('\n')
  1965. })(n, t[3] || '')
  1966. return { type: 'code', raw: n, lang: t[2] ? t[2].trim() : t[2], text: e }
  1967. }
  1968. }),
  1969. (e.prototype.heading = function (e) {
  1970. var t = this.rules.block.heading.exec(e)
  1971. if (t) {
  1972. var n = t[2].trim()
  1973. return /#$/.test(n) && ((e = Ht(n, '#')), (!this.options.pedantic && e && !/ $/.test(e)) || (n = e.trim())), { type: 'heading', raw: t[0], depth: t[1].length, text: n }
  1974. }
  1975. }),
  1976. (e.prototype.nptable = function (e) {
  1977. e = this.rules.block.nptable.exec(e)
  1978. if (e) {
  1979. var t = {
  1980. type: 'table',
  1981. header: qt(e[1].replace(/^ *| *\| *$/g, '')),
  1982. align: e[2].replace(/^ *|\| *$/g, '').split(/ *\| */),
  1983. cells: e[3] ? e[3].replace(/\n$/, '').split('\n') : [],
  1984. raw: e[0],
  1985. }
  1986. if (t.header.length === t.align.length) {
  1987. for (var n = t.align.length, r = 0; r < n; r++)
  1988. /^ *-+: *$/.test(t.align[r])
  1989. ? (t.align[r] = 'right')
  1990. : /^ *:-+: *$/.test(t.align[r])
  1991. ? (t.align[r] = 'center')
  1992. : /^ *:-+ *$/.test(t.align[r])
  1993. ? (t.align[r] = 'left')
  1994. : (t.align[r] = null)
  1995. for (n = t.cells.length, r = 0; r < n; r++) t.cells[r] = qt(t.cells[r], t.header.length)
  1996. return t
  1997. }
  1998. }
  1999. }),
  2000. (e.prototype.hr = function (e) {
  2001. e = this.rules.block.hr.exec(e)
  2002. if (e) return { type: 'hr', raw: e[0] }
  2003. }),
  2004. (e.prototype.blockquote = function (e) {
  2005. var t = this.rules.block.blockquote.exec(e)
  2006. if (t) {
  2007. e = t[0].replace(/^ *> ?/gm, '')
  2008. return { type: 'blockquote', raw: t[0], text: e }
  2009. }
  2010. }),
  2011. (e.prototype.list = function (e) {
  2012. e = this.rules.block.list.exec(e)
  2013. if (e) {
  2014. for (
  2015. var t,
  2016. n,
  2017. r,
  2018. i,
  2019. o,
  2020. a = e[0],
  2021. s = e[2],
  2022. l = 1 < s.length,
  2023. c = { type: 'list', raw: a, ordered: l, start: l ? +s.slice(0, -1) : '', loose: !1, items: [] },
  2024. u = e[0].match(this.rules.block.item),
  2025. p = !1,
  2026. h = u.length,
  2027. d = this.rules.block.listItemStart.exec(u[0]),
  2028. f = 0;
  2029. f < h;
  2030. f++
  2031. ) {
  2032. if (((a = t = u[f]), f !== h - 1)) {
  2033. if (((r = this.rules.block.listItemStart.exec(u[f + 1])), this.options.pedantic ? r[1].length > d[1].length : r[1].length > d[0].length || 3 < r[1].length)) {
  2034. u.splice(f, 2, u[f] + '\n' + u[f + 1]), f--, h--
  2035. continue
  2036. }
  2037. ;(!this.options.pedantic || this.options.smartLists ? r[2][r[2].length - 1] !== s[s.length - 1] : l == (1 === r[2].length)) &&
  2038. ((n = u.slice(f + 1).join('\n')), (c.raw = c.raw.substring(0, c.raw.length - n.length)), (f = h - 1)),
  2039. (d = r)
  2040. }
  2041. ;(r = t.length),
  2042. ~(t = t.replace(/^ *([*+-]|\d+[.)]) ?/, '')).indexOf('\n ') &&
  2043. ((r -= t.length), (t = this.options.pedantic ? t.replace(/^ {1,4}/gm, '') : t.replace(new RegExp('^ {1,' + r + '}', 'gm'), ''))),
  2044. (r = p || /\n\n(?!\s*$)/.test(t)),
  2045. f !== h - 1 && ((p = '\n' === t.charAt(t.length - 1)), (r = r || p)),
  2046. r && (c.loose = !0),
  2047. this.options.gfm && ((o = void 0), (i = /^\[[ xX]\] /.test(t)) && ((o = ' ' !== t[1]), (t = t.replace(/^\[[ xX]\] +/, '')))),
  2048. c.items.push({ type: 'list_item', raw: a, task: i, checked: o, loose: r, text: t })
  2049. }
  2050. return c
  2051. }
  2052. }),
  2053. (e.prototype.html = function (e) {
  2054. e = this.rules.block.html.exec(e)
  2055. if (e)
  2056. return {
  2057. type: this.options.sanitize ? 'paragraph' : 'html',
  2058. raw: e[0],
  2059. pre: !this.options.sanitizer && ('pre' === e[1] || 'script' === e[1] || 'style' === e[1]),
  2060. text: this.options.sanitize ? (this.options.sanitizer ? this.options.sanitizer(e[0]) : Ut(e[0])) : e[0],
  2061. }
  2062. }),
  2063. (e.prototype.def = function (e) {
  2064. e = this.rules.block.def.exec(e)
  2065. if (e) return e[3] && (e[3] = e[3].substring(1, e[3].length - 1)), { tag: e[1].toLowerCase().replace(/\s+/g, ' '), raw: e[0], href: e[2], title: e[3] }
  2066. }),
  2067. (e.prototype.table = function (e) {
  2068. e = this.rules.block.table.exec(e)
  2069. if (e) {
  2070. var t = {
  2071. type: 'table',
  2072. header: qt(e[1].replace(/^ *| *\| *$/g, '')),
  2073. align: e[2].replace(/^ *|\| *$/g, '').split(/ *\| */),
  2074. cells: e[3] ? e[3].replace(/\n$/, '').split('\n') : [],
  2075. }
  2076. if (t.header.length === t.align.length) {
  2077. t.raw = e[0]
  2078. for (var n = t.align.length, r = 0; r < n; r++)
  2079. /^ *-+: *$/.test(t.align[r])
  2080. ? (t.align[r] = 'right')
  2081. : /^ *:-+: *$/.test(t.align[r])
  2082. ? (t.align[r] = 'center')
  2083. : /^ *:-+ *$/.test(t.align[r])
  2084. ? (t.align[r] = 'left')
  2085. : (t.align[r] = null)
  2086. for (n = t.cells.length, r = 0; r < n; r++) t.cells[r] = qt(t.cells[r].replace(/^ *\| *| *\| *$/g, ''), t.header.length)
  2087. return t
  2088. }
  2089. }
  2090. }),
  2091. (e.prototype.lheading = function (e) {
  2092. e = this.rules.block.lheading.exec(e)
  2093. if (e) return { type: 'heading', raw: e[0], depth: '=' === e[2].charAt(0) ? 1 : 2, text: e[1] }
  2094. }),
  2095. (e.prototype.paragraph = function (e) {
  2096. e = this.rules.block.paragraph.exec(e)
  2097. if (e) return { type: 'paragraph', raw: e[0], text: '\n' === e[1].charAt(e[1].length - 1) ? e[1].slice(0, -1) : e[1] }
  2098. }),
  2099. (e.prototype.text = function (e, t) {
  2100. e = this.rules.block.text.exec(e)
  2101. if (e) {
  2102. t = t[t.length - 1]
  2103. return t && 'text' === t.type ? { raw: e[0], text: e[0] } : { type: 'text', raw: e[0], text: e[0] }
  2104. }
  2105. }),
  2106. (e.prototype.escape = function (e) {
  2107. e = this.rules.inline.escape.exec(e)
  2108. if (e) return { type: 'escape', raw: e[0], text: Ut(e[1]) }
  2109. }),
  2110. (e.prototype.tag = function (e, t, n) {
  2111. e = this.rules.inline.tag.exec(e)
  2112. if (e)
  2113. return (
  2114. !t && /^<a /i.test(e[0]) ? (t = !0) : t && /^<\/a>/i.test(e[0]) && (t = !1),
  2115. !n && /^<(pre|code|kbd|script)(\s|>)/i.test(e[0]) ? (n = !0) : n && /^<\/(pre|code|kbd|script)(\s|>)/i.test(e[0]) && (n = !1),
  2116. {
  2117. type: this.options.sanitize ? 'text' : 'html',
  2118. raw: e[0],
  2119. inLink: t,
  2120. inRawBlock: n,
  2121. text: this.options.sanitize ? (this.options.sanitizer ? this.options.sanitizer(e[0]) : Ut(e[0])) : e[0],
  2122. }
  2123. )
  2124. }),
  2125. (e.prototype.link = function (e) {
  2126. var t = this.rules.inline.link.exec(e)
  2127. if (t) {
  2128. var n = t[2].trim()
  2129. if (!this.options.pedantic && /^</.test(n)) {
  2130. if (!/>$/.test(n)) return
  2131. e = Ht(n.slice(0, -1), '\\')
  2132. if ((n.length - e.length) % 2 == 0) return
  2133. } else {
  2134. var r = Bt(t[2], '()')
  2135. ;-1 < r && ((o = (0 === t[0].indexOf('!') ? 5 : 4) + t[1].length + r), (t[2] = t[2].substring(0, r)), (t[0] = t[0].substring(0, o).trim()), (t[3] = ''))
  2136. }
  2137. var i,
  2138. r = t[2],
  2139. o = ''
  2140. return (
  2141. this.options.pedantic ? ((i = /^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r)), i && ((r = i[1]), (o = i[3]))) : (o = t[3] ? t[3].slice(1, -1) : ''),
  2142. (r = r.trim()),
  2143. /^</.test(r) && (r = this.options.pedantic && !/>$/.test(n) ? r.slice(1) : r.slice(1, -1)),
  2144. Zt(t, { href: r ? r.replace(this.rules.inline._escapes, '$1') : r, title: o ? o.replace(this.rules.inline._escapes, '$1') : o }, t[0])
  2145. )
  2146. }
  2147. }),
  2148. (e.prototype.reflink = function (e, t) {
  2149. if ((n = this.rules.inline.reflink.exec(e)) || (n = this.rules.inline.nolink.exec(e))) {
  2150. e = (n[2] || n[1]).replace(/\s+/g, ' ')
  2151. if ((e = t[e.toLowerCase()]) && e.href) return Zt(n, e, n[0])
  2152. var n = n[0].charAt(0)
  2153. return { type: 'text', raw: n, text: n }
  2154. }
  2155. }),
  2156. (e.prototype.strong = function (e, t, n) {
  2157. void 0 === n && (n = '')
  2158. var r = this.rules.inline.strong.start.exec(e)
  2159. if (r && (!r[1] || (r[1] && ('' === n || this.rules.inline.punctuation.exec(n))))) {
  2160. t = t.slice(-1 * e.length)
  2161. var i,
  2162. o = '**' === r[0] ? this.rules.inline.strong.endAst : this.rules.inline.strong.endUnd
  2163. for (o.lastIndex = 0; null != (r = o.exec(t)); )
  2164. if ((i = this.rules.inline.strong.middle.exec(t.slice(0, r.index + 3)))) return { type: 'strong', raw: e.slice(0, i[0].length), text: e.slice(2, i[0].length - 2) }
  2165. }
  2166. }),
  2167. (e.prototype.em = function (e, t, n) {
  2168. void 0 === n && (n = '')
  2169. var r = this.rules.inline.em.start.exec(e)
  2170. if (r && (!r[1] || (r[1] && ('' === n || this.rules.inline.punctuation.exec(n))))) {
  2171. t = t.slice(-1 * e.length)
  2172. var i,
  2173. o = '*' === r[0] ? this.rules.inline.em.endAst : this.rules.inline.em.endUnd
  2174. for (o.lastIndex = 0; null != (r = o.exec(t)); )
  2175. if ((i = this.rules.inline.em.middle.exec(t.slice(0, r.index + 2)))) return { type: 'em', raw: e.slice(0, i[0].length), text: e.slice(1, i[0].length - 1) }
  2176. }
  2177. }),
  2178. (e.prototype.codespan = function (e) {
  2179. var t = this.rules.inline.code.exec(e)
  2180. if (t) {
  2181. var n = t[2].replace(/\n/g, ' '),
  2182. r = /[^ ]/.test(n),
  2183. e = /^ /.test(n) && / $/.test(n)
  2184. return r && e && (n = n.substring(1, n.length - 1)), (n = Ut(n, !0)), { type: 'codespan', raw: t[0], text: n }
  2185. }
  2186. }),
  2187. (e.prototype.br = function (e) {
  2188. e = this.rules.inline.br.exec(e)
  2189. if (e) return { type: 'br', raw: e[0] }
  2190. }),
  2191. (e.prototype.del = function (e) {
  2192. e = this.rules.inline.del.exec(e)
  2193. if (e) return { type: 'del', raw: e[0], text: e[2] }
  2194. }),
  2195. (e.prototype.autolink = function (e, t) {
  2196. e = this.rules.inline.autolink.exec(e)
  2197. if (e) {
  2198. var n,
  2199. t = '@' === e[2] ? 'mailto:' + (n = Ut(this.options.mangle ? t(e[1]) : e[1])) : (n = Ut(e[1]))
  2200. return { type: 'link', raw: e[0], text: n, href: t, tokens: [{ type: 'text', raw: n, text: n }] }
  2201. }
  2202. }),
  2203. (e.prototype.url = function (e, t) {
  2204. var n, r, i, o
  2205. if ((n = this.rules.inline.url.exec(e))) {
  2206. if ('@' === n[2]) i = 'mailto:' + (r = Ut(this.options.mangle ? t(n[0]) : n[0]))
  2207. else {
  2208. for (; (o = n[0]), (n[0] = this.rules.inline._backpedal.exec(n[0])[0]), o !== n[0]; );
  2209. ;(r = Ut(n[0])), (i = 'www.' === n[1] ? 'http://' + r : r)
  2210. }
  2211. return { type: 'link', raw: n[0], text: r, href: i, tokens: [{ type: 'text', raw: r, text: r }] }
  2212. }
  2213. }),
  2214. (e.prototype.inlineText = function (e, t, n) {
  2215. e = this.rules.inline.text.exec(e)
  2216. if (e) {
  2217. n = t ? (this.options.sanitize ? (this.options.sanitizer ? this.options.sanitizer(e[0]) : Ut(e[0])) : e[0]) : Ut(this.options.smartypants ? n(e[0]) : e[0])
  2218. return { type: 'text', raw: e[0], text: n }
  2219. }
  2220. }),
  2221. e
  2222. )
  2223. })(),
  2224. It = Dt,
  2225. I = Nt,
  2226. Dt = Pt,
  2227. Nt = {
  2228. newline: /^(?: *(?:\n|$))+/,
  2229. code: /^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,
  2230. fences: /^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,
  2231. hr: /^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,
  2232. heading: /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,
  2233. blockquote: /^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,
  2234. list: /^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,
  2235. html: '^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))',
  2236. def: /^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,
  2237. nptable: It,
  2238. table: It,
  2239. lheading: /^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,
  2240. _paragraph: /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,
  2241. text: /^[^\n]+/,
  2242. _label: /(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,
  2243. _title: /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/,
  2244. }
  2245. ;(Nt.def = I(Nt.def).replace('label', Nt._label).replace('title', Nt._title).getRegex()),
  2246. (Nt.bullet = /(?:[*+-]|\d{1,9}[.)])/),
  2247. (Nt.item = /^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/),
  2248. (Nt.item = I(Nt.item, 'gm').replace(/bull/g, Nt.bullet).getRegex()),
  2249. (Nt.listItemStart = I(/^( *)(bull)/)
  2250. .replace('bull', Nt.bullet)
  2251. .getRegex()),
  2252. (Nt.list = I(Nt.list)
  2253. .replace(/bull/g, Nt.bullet)
  2254. .replace('hr', '\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))')
  2255. .replace('def', '\\n+(?=' + Nt.def.source + ')')
  2256. .getRegex()),
  2257. (Nt._tag =
  2258. 'address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul'),
  2259. (Nt._comment = /<!--(?!-?>)[\s\S]*?(?:-->|$)/),
  2260. (Nt.html = I(Nt.html, 'i')
  2261. .replace('comment', Nt._comment)
  2262. .replace('tag', Nt._tag)
  2263. .replace('attribute', / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/)
  2264. .getRegex()),
  2265. (Nt.paragraph = I(Nt._paragraph)
  2266. .replace('hr', Nt.hr)
  2267. .replace('heading', ' {0,3}#{1,6} ')
  2268. .replace('|lheading', '')
  2269. .replace('blockquote', ' {0,3}>')
  2270. .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n')
  2271. .replace('list', ' {0,3}(?:[*+-]|1[.)]) ')
  2272. .replace('html', '</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)')
  2273. .replace('tag', Nt._tag)
  2274. .getRegex()),
  2275. (Nt.blockquote = I(Nt.blockquote).replace('paragraph', Nt.paragraph).getRegex()),
  2276. (Nt.normal = Dt({}, Nt)),
  2277. (Nt.gfm = Dt({}, Nt.normal, {
  2278. nptable: '^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)',
  2279. table: '^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)',
  2280. })),
  2281. (Nt.gfm.nptable = I(Nt.gfm.nptable)
  2282. .replace('hr', Nt.hr)
  2283. .replace('heading', ' {0,3}#{1,6} ')
  2284. .replace('blockquote', ' {0,3}>')
  2285. .replace('code', ' {4}[^\\n]')
  2286. .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n')
  2287. .replace('list', ' {0,3}(?:[*+-]|1[.)]) ')
  2288. .replace('html', '</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)')
  2289. .replace('tag', Nt._tag)
  2290. .getRegex()),
  2291. (Nt.gfm.table = I(Nt.gfm.table)
  2292. .replace('hr', Nt.hr)
  2293. .replace('heading', ' {0,3}#{1,6} ')
  2294. .replace('blockquote', ' {0,3}>')
  2295. .replace('code', ' {4}[^\\n]')
  2296. .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n')
  2297. .replace('list', ' {0,3}(?:[*+-]|1[.)]) ')
  2298. .replace('html', '</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)')
  2299. .replace('tag', Nt._tag)
  2300. .getRegex()),
  2301. (Nt.pedantic = Dt({}, Nt.normal, {
  2302. html: I('^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|\'[^\']*\'|\\s[^\'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))')
  2303. .replace('comment', Nt._comment)
  2304. .replace(/tag/g, '(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b')
  2305. .getRegex(),
  2306. def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
  2307. heading: /^(#{1,6})(.*)(?:\n+|$)/,
  2308. fences: It,
  2309. paragraph: I(Nt.normal._paragraph)
  2310. .replace('hr', Nt.hr)
  2311. .replace('heading', ' *#{1,6} *[^\n]')
  2312. .replace('lheading', Nt.lheading)
  2313. .replace('blockquote', ' {0,3}>')
  2314. .replace('|fences', '')
  2315. .replace('|list', '')
  2316. .replace('|html', '')
  2317. .getRegex(),
  2318. }))
  2319. It = {
  2320. escape: /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,
  2321. autolink: /^<(scheme:[^\s\x00-\x1f<>]*|email)>/,
  2322. url: It,
  2323. tag: '^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>',
  2324. link: /^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,
  2325. reflink: /^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,
  2326. nolink: /^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,
  2327. reflinkSearch: 'reflink|nolink(?!\\()',
  2328. strong: {
  2329. start: /^(?:(\*\*(?=[*punctuation]))|\*\*)(?![\s])|__/,
  2330. middle: /^\*\*(?:(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)|\*(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)*?\*)+?\*\*$|^__(?![\s])((?:(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)|_(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)*?_)+?)__$/,
  2331. endAst: /[^punctuation\s]\*\*(?!\*)|[punctuation]\*\*(?!\*)(?:(?=[punctuation_\s]|$))/,
  2332. endUnd: /[^\s]__(?!_)(?:(?=[punctuation*\s])|$)/,
  2333. },
  2334. em: {
  2335. start: /^(?:(\*(?=[punctuation]))|\*)(?![*\s])|_/,
  2336. middle: /^\*(?:(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)|\*(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)*?\*)+?\*$|^_(?![_\s])(?:(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)|_(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)*?_)+?_$/,
  2337. endAst: /[^punctuation\s]\*(?!\*)|[punctuation]\*(?!\*)(?:(?=[punctuation_\s]|$))/,
  2338. endUnd: /[^\s]_(?!_)(?:(?=[punctuation*\s])|$)/,
  2339. },
  2340. code: /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,
  2341. br: /^( {2,}|\\)\n(?!\s*$)/,
  2342. del: It,
  2343. text: /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n)))/,
  2344. punctuation: /^([\s*punctuation])/,
  2345. _punctuation: '!"#$%&\'()+\\-.,/:;<=>?@\\[\\]`^{|}~',
  2346. }
  2347. ;(It.punctuation = I(It.punctuation)
  2348. .replace(/punctuation/g, It._punctuation)
  2349. .getRegex()),
  2350. (It._blockSkip = '\\[[^\\]]*?\\]\\([^\\)]*?\\)|`[^`]*?`|<[^>]*?>'),
  2351. (It._overlapSkip = '__[^_]*?__|\\*\\*\\[^\\*\\]*?\\*\\*'),
  2352. (It._comment = I(Nt._comment).replace('(?:--\x3e|$)', '--\x3e').getRegex()),
  2353. (It.em.start = I(It.em.start)
  2354. .replace(/punctuation/g, It._punctuation)
  2355. .getRegex()),
  2356. (It.em.middle = I(It.em.middle)
  2357. .replace(/punctuation/g, It._punctuation)
  2358. .replace(/overlapSkip/g, It._overlapSkip)
  2359. .getRegex()),
  2360. (It.em.endAst = I(It.em.endAst, 'g')
  2361. .replace(/punctuation/g, It._punctuation)
  2362. .getRegex()),
  2363. (It.em.endUnd = I(It.em.endUnd, 'g')
  2364. .replace(/punctuation/g, It._punctuation)
  2365. .getRegex()),
  2366. (It.strong.start = I(It.strong.start)
  2367. .replace(/punctuation/g, It._punctuation)
  2368. .getRegex()),
  2369. (It.strong.middle = I(It.strong.middle)
  2370. .replace(/punctuation/g, It._punctuation)
  2371. .replace(/overlapSkip/g, It._overlapSkip)
  2372. .getRegex()),
  2373. (It.strong.endAst = I(It.strong.endAst, 'g')
  2374. .replace(/punctuation/g, It._punctuation)
  2375. .getRegex()),
  2376. (It.strong.endUnd = I(It.strong.endUnd, 'g')
  2377. .replace(/punctuation/g, It._punctuation)
  2378. .getRegex()),
  2379. (It.blockSkip = I(It._blockSkip, 'g').getRegex()),
  2380. (It.overlapSkip = I(It._overlapSkip, 'g').getRegex()),
  2381. (It._escapes = /\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g),
  2382. (It._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/),
  2383. (It._email = /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/),
  2384. (It.autolink = I(It.autolink).replace('scheme', It._scheme).replace('email', It._email).getRegex()),
  2385. (It._attribute = /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/),
  2386. (It.tag = I(It.tag).replace('comment', It._comment).replace('attribute', It._attribute).getRegex()),
  2387. (It._label = /(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/),
  2388. (It._href = /<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/),
  2389. (It._title = /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/),
  2390. (It.link = I(It.link).replace('label', It._label).replace('href', It._href).replace('title', It._title).getRegex()),
  2391. (It.reflink = I(It.reflink).replace('label', It._label).getRegex()),
  2392. (It.reflinkSearch = I(It.reflinkSearch, 'g').replace('reflink', It.reflink).replace('nolink', It.nolink).getRegex()),
  2393. (It.normal = Dt({}, It)),
  2394. (It.pedantic = Dt({}, It.normal, {
  2395. strong: { start: /^__|\*\*/, middle: /^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/, endAst: /\*\*(?!\*)/g, endUnd: /__(?!_)/g },
  2396. em: { start: /^_|\*/, middle: /^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/, endAst: /\*(?!\*)/g, endUnd: /_(?!_)/g },
  2397. link: I(/^!?\[(label)\]\((.*?)\)/)
  2398. .replace('label', It._label)
  2399. .getRegex(),
  2400. reflink: I(/^!?\[(label)\]\s*\[([^\]]*)\]/)
  2401. .replace('label', It._label)
  2402. .getRegex(),
  2403. })),
  2404. (It.gfm = Dt({}, It.normal, {
  2405. escape: I(It.escape).replace('])', '~|])').getRegex(),
  2406. _extended_email: /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,
  2407. url: /^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,
  2408. _backpedal: /(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,
  2409. del: /^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,
  2410. text: /^([`~]+|[^`~])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/,
  2411. })),
  2412. (It.gfm.url = I(It.gfm.url, 'i').replace('email', It.gfm._extended_email).getRegex()),
  2413. (It.breaks = Dt({}, It.gfm, {
  2414. br: I(It.br).replace('{2,}', '*').getRegex(),
  2415. text: I(It.gfm.text)
  2416. .replace('\\b_', '\\b_| {2,}\\n')
  2417. .replace(/\{2,\}/g, '*')
  2418. .getRegex(),
  2419. }))
  2420. var It = { block: Nt, inline: It },
  2421. Wt = mt.defaults,
  2422. Vt = It.block,
  2423. Yt = It.inline,
  2424. Xt = Q
  2425. function Kt(e) {
  2426. return e
  2427. .replace(/---/g, '—')
  2428. .replace(/--/g, '–')
  2429. .replace(/(^|[-\u2014/(\[{"\s])'/g, '$1‘')
  2430. .replace(/'/g, '’')
  2431. .replace(/(^|[-\u2014/(\[{\u2018\s])"/g, '$1“')
  2432. .replace(/"/g, '”')
  2433. .replace(/\.{3}/g, '…')
  2434. }
  2435. function Qt(e) {
  2436. for (var t, n = '', r = e.length, i = 0; i < r; i++) (t = e.charCodeAt(i)), 0.5 < Math.random() && (t = 'x' + t.toString(16)), (n += '&#' + t + ';')
  2437. return n
  2438. }
  2439. var Jt = (function () {
  2440. function n(e) {
  2441. ;(this.tokens = []),
  2442. (this.tokens.links = Object.create(null)),
  2443. (this.options = e || Wt),
  2444. (this.options.tokenizer = this.options.tokenizer || new Gt()),
  2445. (this.tokenizer = this.options.tokenizer),
  2446. (this.tokenizer.options = this.options)
  2447. e = { block: Vt.normal, inline: Yt.normal }
  2448. this.options.pedantic
  2449. ? ((e.block = Vt.pedantic), (e.inline = Yt.pedantic))
  2450. : this.options.gfm && ((e.block = Vt.gfm), this.options.breaks ? (e.inline = Yt.breaks) : (e.inline = Yt.gfm)),
  2451. (this.tokenizer.rules = e)
  2452. }
  2453. var e = { rules: { configurable: !0 } }
  2454. return (
  2455. (e.rules.get = function () {
  2456. return { block: Vt, inline: Yt }
  2457. }),
  2458. (n.lex = function (e, t) {
  2459. return new n(t).lex(e)
  2460. }),
  2461. (n.lexInline = function (e, t) {
  2462. return new n(t).inlineTokens(e)
  2463. }),
  2464. (n.prototype.lex = function (e) {
  2465. return (e = e.replace(/\r\n|\r/g, '\n').replace(/\t/g, ' ')), this.blockTokens(e, this.tokens, !0), this.inline(this.tokens), this.tokens
  2466. }),
  2467. (n.prototype.blockTokens = function (e, t, n) {
  2468. var r, i, o, a
  2469. for (void 0 === t && (t = []), void 0 === n && (n = !0), this.options.pedantic && (e = e.replace(/^ +$/gm, '')); e; )
  2470. if ((r = this.tokenizer.space(e))) (e = e.substring(r.raw.length)), r.type && t.push(r)
  2471. else if ((r = this.tokenizer.code(e, t))) (e = e.substring(r.raw.length)), r.type ? t.push(r) : (((a = t[t.length - 1]).raw += '\n' + r.raw), (a.text += '\n' + r.text))
  2472. else if ((r = this.tokenizer.fences(e))) (e = e.substring(r.raw.length)), t.push(r)
  2473. else if ((r = this.tokenizer.heading(e))) (e = e.substring(r.raw.length)), t.push(r)
  2474. else if ((r = this.tokenizer.nptable(e))) (e = e.substring(r.raw.length)), t.push(r)
  2475. else if ((r = this.tokenizer.hr(e))) (e = e.substring(r.raw.length)), t.push(r)
  2476. else if ((r = this.tokenizer.blockquote(e))) (e = e.substring(r.raw.length)), (r.tokens = this.blockTokens(r.text, [], n)), t.push(r)
  2477. else if ((r = this.tokenizer.list(e))) {
  2478. for (e = e.substring(r.raw.length), o = r.items.length, i = 0; i < o; i++) r.items[i].tokens = this.blockTokens(r.items[i].text, [], !1)
  2479. t.push(r)
  2480. } else if ((r = this.tokenizer.html(e))) (e = e.substring(r.raw.length)), t.push(r)
  2481. else if (n && (r = this.tokenizer.def(e))) (e = e.substring(r.raw.length)), this.tokens.links[r.tag] || (this.tokens.links[r.tag] = { href: r.href, title: r.title })
  2482. else if ((r = this.tokenizer.table(e))) (e = e.substring(r.raw.length)), t.push(r)
  2483. else if ((r = this.tokenizer.lheading(e))) (e = e.substring(r.raw.length)), t.push(r)
  2484. else if (n && (r = this.tokenizer.paragraph(e))) (e = e.substring(r.raw.length)), t.push(r)
  2485. else if ((r = this.tokenizer.text(e, t))) (e = e.substring(r.raw.length)), r.type ? t.push(r) : (((a = t[t.length - 1]).raw += '\n' + r.raw), (a.text += '\n' + r.text))
  2486. else if (e) {
  2487. var s = 'Infinite loop on byte: ' + e.charCodeAt(0)
  2488. if (this.options.silent) {
  2489. console.error(s)
  2490. break
  2491. }
  2492. throw new Error(s)
  2493. }
  2494. return t
  2495. }),
  2496. (n.prototype.inline = function (e) {
  2497. for (var t, n, r, i, o, a = e.length, s = 0; s < a; s++)
  2498. switch ((o = e[s]).type) {
  2499. case 'paragraph':
  2500. case 'text':
  2501. case 'heading':
  2502. ;(o.tokens = []), this.inlineTokens(o.text, o.tokens)
  2503. break
  2504. case 'table':
  2505. for (o.tokens = { header: [], cells: [] }, r = o.header.length, t = 0; t < r; t++) (o.tokens.header[t] = []), this.inlineTokens(o.header[t], o.tokens.header[t])
  2506. for (r = o.cells.length, t = 0; t < r; t++)
  2507. for (i = o.cells[t], o.tokens.cells[t] = [], n = 0; n < i.length; n++) (o.tokens.cells[t][n] = []), this.inlineTokens(i[n], o.tokens.cells[t][n])
  2508. break
  2509. case 'blockquote':
  2510. this.inline(o.tokens)
  2511. break
  2512. case 'list':
  2513. for (r = o.items.length, t = 0; t < r; t++) this.inline(o.items[t].tokens)
  2514. }
  2515. return e
  2516. }),
  2517. (n.prototype.inlineTokens = function (e, t, n, r) {
  2518. var i
  2519. void 0 === t && (t = []), void 0 === n && (n = !1), void 0 === r && (r = !1)
  2520. var o,
  2521. a,
  2522. s,
  2523. l = e
  2524. if (this.tokens.links) {
  2525. var c = Object.keys(this.tokens.links)
  2526. if (0 < c.length)
  2527. for (; null != (o = this.tokenizer.rules.inline.reflinkSearch.exec(l)); )
  2528. c.includes(o[0].slice(o[0].lastIndexOf('[') + 1, -1)) &&
  2529. (l = l.slice(0, o.index) + '[' + Xt('a', o[0].length - 2) + ']' + l.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))
  2530. }
  2531. for (; null != (o = this.tokenizer.rules.inline.blockSkip.exec(l)); )
  2532. l = l.slice(0, o.index) + '[' + Xt('a', o[0].length - 2) + ']' + l.slice(this.tokenizer.rules.inline.blockSkip.lastIndex)
  2533. for (; e; )
  2534. if ((a || (s = ''), (a = !1), (i = this.tokenizer.escape(e)))) (e = e.substring(i.raw.length)), t.push(i)
  2535. else if ((i = this.tokenizer.tag(e, n, r))) (e = e.substring(i.raw.length)), (n = i.inLink), (r = i.inRawBlock), t.push(i)
  2536. else if ((i = this.tokenizer.link(e))) (e = e.substring(i.raw.length)), 'link' === i.type && (i.tokens = this.inlineTokens(i.text, [], !0, r)), t.push(i)
  2537. else if ((i = this.tokenizer.reflink(e, this.tokens.links))) (e = e.substring(i.raw.length)), 'link' === i.type && (i.tokens = this.inlineTokens(i.text, [], !0, r)), t.push(i)
  2538. else if ((i = this.tokenizer.strong(e, l, s))) (e = e.substring(i.raw.length)), (i.tokens = this.inlineTokens(i.text, [], n, r)), t.push(i)
  2539. else if ((i = this.tokenizer.em(e, l, s))) (e = e.substring(i.raw.length)), (i.tokens = this.inlineTokens(i.text, [], n, r)), t.push(i)
  2540. else if ((i = this.tokenizer.codespan(e))) (e = e.substring(i.raw.length)), t.push(i)
  2541. else if ((i = this.tokenizer.br(e))) (e = e.substring(i.raw.length)), t.push(i)
  2542. else if ((i = this.tokenizer.del(e))) (e = e.substring(i.raw.length)), (i.tokens = this.inlineTokens(i.text, [], n, r)), t.push(i)
  2543. else if ((i = this.tokenizer.autolink(e, Qt))) (e = e.substring(i.raw.length)), t.push(i)
  2544. else if (n || !(i = this.tokenizer.url(e, Qt))) {
  2545. if ((i = this.tokenizer.inlineText(e, r, Kt))) (e = e.substring(i.raw.length)), (s = i.raw.slice(-1)), (a = !0), t.push(i)
  2546. else if (e) {
  2547. var u = 'Infinite loop on byte: ' + e.charCodeAt(0)
  2548. if (this.options.silent) {
  2549. console.error(u)
  2550. break
  2551. }
  2552. throw new Error(u)
  2553. }
  2554. } else (e = e.substring(i.raw.length)), t.push(i)
  2555. return t
  2556. }),
  2557. Object.defineProperties(n, e),
  2558. n
  2559. )
  2560. })(),
  2561. en = mt.defaults,
  2562. tn = Mt,
  2563. nn = Lt,
  2564. rn = (function () {
  2565. function e(e) {
  2566. this.options = e || en
  2567. }
  2568. return (
  2569. (e.prototype.code = function (e, t, n) {
  2570. var r = (t || '').match(/\S*/)[0]
  2571. return (
  2572. !this.options.highlight || (null != (t = this.options.highlight(e, r)) && t !== e && ((n = !0), (e = t))),
  2573. (e = e.replace(/\n$/, '') + '\n'),
  2574. r ? '<pre><code class="' + this.options.langPrefix + nn(r, !0) + '">' + (n ? e : nn(e, !0)) + '</code></pre>\n' : '<pre><code>' + (n ? e : nn(e, !0)) + '</code></pre>\n'
  2575. )
  2576. }),
  2577. (e.prototype.blockquote = function (e) {
  2578. return '<blockquote>\n' + e + '</blockquote>\n'
  2579. }),
  2580. (e.prototype.html = function (e) {
  2581. return e
  2582. }),
  2583. (e.prototype.heading = function (e, t, n, r) {
  2584. return this.options.headerIds ? '<h' + t + ' id="' + this.options.headerPrefix + r.slug(n) + '">' + e + '</h' + t + '>\n' : '<h' + t + '>' + e + '</h' + t + '>\n'
  2585. }),
  2586. (e.prototype.hr = function () {
  2587. return this.options.xhtml ? '<hr/>\n' : '<hr>\n'
  2588. }),
  2589. (e.prototype.list = function (e, t, n) {
  2590. var r = t ? 'ol' : 'ul'
  2591. return '<' + r + (t && 1 !== n ? ' start="' + n + '"' : '') + '>\n' + e + '</' + r + '>\n'
  2592. }),
  2593. (e.prototype.listitem = function (e) {
  2594. return '<li>' + e + '</li>\n'
  2595. }),
  2596. (e.prototype.checkbox = function (e) {
  2597. return '<input ' + (e ? 'checked="" ' : '') + 'disabled="" type="checkbox"' + (this.options.xhtml ? ' /' : '') + '> '
  2598. }),
  2599. (e.prototype.paragraph = function (e) {
  2600. return '<p>' + e + '</p>\n'
  2601. }),
  2602. (e.prototype.table = function (e, t) {
  2603. return '<table>\n<thead>\n' + e + '</thead>\n' + (t = t && '<tbody>' + t + '</tbody>') + '</table>\n'
  2604. }),
  2605. (e.prototype.tablerow = function (e) {
  2606. return '<tr>\n' + e + '</tr>\n'
  2607. }),
  2608. (e.prototype.tablecell = function (e, t) {
  2609. var n = t.header ? 'th' : 'td'
  2610. return (t.align ? '<' + n + ' align="' + t.align + '">' : '<' + n + '>') + e + '</' + n + '>\n'
  2611. }),
  2612. (e.prototype.strong = function (e) {
  2613. return '<strong>' + e + '</strong>'
  2614. }),
  2615. (e.prototype.em = function (e) {
  2616. return '<em>' + e + '</em>'
  2617. }),
  2618. (e.prototype.codespan = function (e) {
  2619. return '<code>' + e + '</code>'
  2620. }),
  2621. (e.prototype.br = function () {
  2622. return this.options.xhtml ? '<br/>' : '<br>'
  2623. }),
  2624. (e.prototype.del = function (e) {
  2625. return '<del>' + e + '</del>'
  2626. }),
  2627. (e.prototype.link = function (e, t, n) {
  2628. if (null === (e = tn(this.options.sanitize, this.options.baseUrl, e))) return n
  2629. e = '<a href="' + nn(e) + '"'
  2630. return t && (e += ' title="' + t + '"'), (e += '>' + n + '</a>')
  2631. }),
  2632. (e.prototype.image = function (e, t, n) {
  2633. if (null === (e = tn(this.options.sanitize, this.options.baseUrl, e))) return n
  2634. n = '<img src="' + e + '" alt="' + n + '"'
  2635. return t && (n += ' title="' + t + '"'), (n += this.options.xhtml ? '/>' : '>')
  2636. }),
  2637. (e.prototype.text = function (e) {
  2638. return e
  2639. }),
  2640. e
  2641. )
  2642. })(),
  2643. on = (function () {
  2644. function e() {}
  2645. return (
  2646. (e.prototype.strong = function (e) {
  2647. return e
  2648. }),
  2649. (e.prototype.em = function (e) {
  2650. return e
  2651. }),
  2652. (e.prototype.codespan = function (e) {
  2653. return e
  2654. }),
  2655. (e.prototype.del = function (e) {
  2656. return e
  2657. }),
  2658. (e.prototype.html = function (e) {
  2659. return e
  2660. }),
  2661. (e.prototype.text = function (e) {
  2662. return e
  2663. }),
  2664. (e.prototype.link = function (e, t, n) {
  2665. return '' + n
  2666. }),
  2667. (e.prototype.image = function (e, t, n) {
  2668. return '' + n
  2669. }),
  2670. (e.prototype.br = function () {
  2671. return ''
  2672. }),
  2673. e
  2674. )
  2675. })(),
  2676. an = (function () {
  2677. function e() {
  2678. this.seen = {}
  2679. }
  2680. return (
  2681. (e.prototype.serialize = function (e) {
  2682. return e
  2683. .toLowerCase()
  2684. .trim()
  2685. .replace(/<[!\/a-z].*?>/gi, '')
  2686. .replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g, '')
  2687. .replace(/\s/g, '-')
  2688. }),
  2689. (e.prototype.getNextSafeSlug = function (e, t) {
  2690. var n = e,
  2691. r = 0
  2692. if (this.seen.hasOwnProperty(n)) for (r = this.seen[e]; (n = e + '-' + ++r), this.seen.hasOwnProperty(n); );
  2693. return t || ((this.seen[e] = r), (this.seen[n] = 0)), n
  2694. }),
  2695. (e.prototype.slug = function (e, t) {
  2696. void 0 === t && (t = {})
  2697. var n = this.serialize(e)
  2698. return this.getNextSafeSlug(n, t.dryrun)
  2699. }),
  2700. e
  2701. )
  2702. })(),
  2703. sn = mt.defaults,
  2704. ln = zt,
  2705. cn = (function () {
  2706. function n(e) {
  2707. ;(this.options = e || sn),
  2708. (this.options.renderer = this.options.renderer || new rn()),
  2709. (this.renderer = this.options.renderer),
  2710. (this.renderer.options = this.options),
  2711. (this.textRenderer = new on()),
  2712. (this.slugger = new an())
  2713. }
  2714. return (
  2715. (n.parse = function (e, t) {
  2716. return new n(t).parse(e)
  2717. }),
  2718. (n.parseInline = function (e, t) {
  2719. return new n(t).parseInline(e)
  2720. }),
  2721. (n.prototype.parse = function (e, t) {
  2722. void 0 === t && (t = !0)
  2723. for (var n, r, i, o, a, s, l, c, u, p, h, d, f, g, m, v = '', y = e.length, b = 0; b < y; b++)
  2724. switch ((c = e[b]).type) {
  2725. case 'space':
  2726. continue
  2727. case 'hr':
  2728. v += this.renderer.hr()
  2729. continue
  2730. case 'heading':
  2731. v += this.renderer.heading(this.parseInline(c.tokens), c.depth, ln(this.parseInline(c.tokens, this.textRenderer)), this.slugger)
  2732. continue
  2733. case 'code':
  2734. v += this.renderer.code(c.text, c.lang, c.escaped)
  2735. continue
  2736. case 'table':
  2737. for (s = u = '', i = c.header.length, n = 0; n < i; n++) s += this.renderer.tablecell(this.parseInline(c.tokens.header[n]), { header: !0, align: c.align[n] })
  2738. for (u += this.renderer.tablerow(s), l = '', i = c.cells.length, n = 0; n < i; n++) {
  2739. for (s = '', o = (a = c.tokens.cells[n]).length, r = 0; r < o; r++) s += this.renderer.tablecell(this.parseInline(a[r]), { header: !1, align: c.align[r] })
  2740. l += this.renderer.tablerow(s)
  2741. }
  2742. v += this.renderer.table(u, l)
  2743. continue
  2744. case 'blockquote':
  2745. ;(l = this.parse(c.tokens)), (v += this.renderer.blockquote(l))
  2746. continue
  2747. case 'list':
  2748. for (u = c.ordered, k = c.start, p = c.loose, i = c.items.length, l = '', n = 0; n < i; n++)
  2749. (f = (d = c.items[n]).checked),
  2750. (g = d.task),
  2751. (h = ''),
  2752. d.task &&
  2753. ((m = this.renderer.checkbox(f)),
  2754. p
  2755. ? 0 < d.tokens.length && 'text' === d.tokens[0].type
  2756. ? ((d.tokens[0].text = m + ' ' + d.tokens[0].text),
  2757. d.tokens[0].tokens &&
  2758. 0 < d.tokens[0].tokens.length &&
  2759. 'text' === d.tokens[0].tokens[0].type &&
  2760. (d.tokens[0].tokens[0].text = m + ' ' + d.tokens[0].tokens[0].text))
  2761. : d.tokens.unshift({ type: 'text', text: m })
  2762. : (h += m)),
  2763. (h += this.parse(d.tokens, p)),
  2764. (l += this.renderer.listitem(h, g, f))
  2765. v += this.renderer.list(l, u, k)
  2766. continue
  2767. case 'html':
  2768. v += this.renderer.html(c.text)
  2769. continue
  2770. case 'paragraph':
  2771. v += this.renderer.paragraph(this.parseInline(c.tokens))
  2772. continue
  2773. case 'text':
  2774. for (l = c.tokens ? this.parseInline(c.tokens) : c.text; b + 1 < y && 'text' === e[b + 1].type; )
  2775. l += '\n' + ((c = e[++b]).tokens ? this.parseInline(c.tokens) : c.text)
  2776. v += t ? this.renderer.paragraph(l) : l
  2777. continue
  2778. default:
  2779. var k = 'Token with "' + c.type + '" type was not found.'
  2780. if (this.options.silent) return void console.error(k)
  2781. throw new Error(k)
  2782. }
  2783. return v
  2784. }),
  2785. (n.prototype.parseInline = function (e, t) {
  2786. t = t || this.renderer
  2787. for (var n = '', r = e.length, i = 0; i < r; i++)
  2788. switch ((o = e[i]).type) {
  2789. case 'escape':
  2790. n += t.text(o.text)
  2791. break
  2792. case 'html':
  2793. n += t.html(o.text)
  2794. break
  2795. case 'link':
  2796. n += t.link(o.href, o.title, this.parseInline(o.tokens, t))
  2797. break
  2798. case 'image':
  2799. n += t.image(o.href, o.title, o.text)
  2800. break
  2801. case 'strong':
  2802. n += t.strong(this.parseInline(o.tokens, t))
  2803. break
  2804. case 'em':
  2805. n += t.em(this.parseInline(o.tokens, t))
  2806. break
  2807. case 'codespan':
  2808. n += t.codespan(o.text)
  2809. break
  2810. case 'br':
  2811. n += t.br()
  2812. break
  2813. case 'del':
  2814. n += t.del(this.parseInline(o.tokens, t))
  2815. break
  2816. case 'text':
  2817. n += t.text(o.text)
  2818. break
  2819. default:
  2820. var o = 'Token with "' + o.type + '" type was not found.'
  2821. if (this.options.silent) return void console.error(o)
  2822. throw new Error(o)
  2823. }
  2824. return n
  2825. }),
  2826. n
  2827. )
  2828. })(),
  2829. un = Pt,
  2830. pn = ee,
  2831. hn = Lt,
  2832. Lt = mt.getDefaults,
  2833. dn = mt.changeDefaults,
  2834. mt = mt.defaults
  2835. function fn(e, n, r) {
  2836. if (null == e) throw new Error('marked(): input parameter is undefined or null')
  2837. if ('string' != typeof e) throw new Error('marked(): input parameter is of type ' + Object.prototype.toString.call(e) + ', string expected')
  2838. if (('function' == typeof n && ((r = n), (n = null)), (n = un({}, fn.defaults, n || {})), pn(n), r)) {
  2839. var i,
  2840. o = n.highlight
  2841. try {
  2842. i = Jt.lex(e, n)
  2843. } catch (e) {
  2844. return r(e)
  2845. }
  2846. function a(t) {
  2847. var e
  2848. if (!t)
  2849. try {
  2850. e = cn.parse(i, n)
  2851. } catch (e) {
  2852. t = e
  2853. }
  2854. return (n.highlight = o), t ? r(t) : r(null, e)
  2855. }
  2856. if (!o || o.length < 3) return a()
  2857. if ((delete n.highlight, !i.length)) return a()
  2858. var s = 0
  2859. return (
  2860. fn.walkTokens(i, function (n) {
  2861. 'code' === n.type &&
  2862. (s++,
  2863. setTimeout(function () {
  2864. o(n.text, n.lang, function (e, t) {
  2865. return e ? a(e) : (null != t && t !== n.text && ((n.text = t), (n.escaped = !0)), void (0 === --s && a()))
  2866. })
  2867. }, 0))
  2868. }),
  2869. void (0 === s && a())
  2870. )
  2871. }
  2872. try {
  2873. var t = Jt.lex(e, n)
  2874. return n.walkTokens && fn.walkTokens(t, n.walkTokens), cn.parse(t, n)
  2875. } catch (e) {
  2876. if (((e.message += '\nPlease report this to https://github.com/markedjs/marked.'), n.silent)) return '<p>An error occurred:</p><pre>' + hn(e.message + '', !0) + '</pre>'
  2877. throw e
  2878. }
  2879. }
  2880. ;(fn.options = fn.setOptions =
  2881. function (e) {
  2882. return un(fn.defaults, e), dn(fn.defaults), fn
  2883. }),
  2884. (fn.getDefaults = Lt),
  2885. (fn.defaults = mt),
  2886. (fn.use = function (o) {
  2887. var t,
  2888. e = un({}, o)
  2889. if (o.renderer) {
  2890. var n,
  2891. a = fn.defaults.renderer || new rn()
  2892. for (n in o.renderer)
  2893. !(function (r) {
  2894. var i = a[r]
  2895. a[r] = function () {
  2896. for (var e = [], t = arguments.length; t--; ) e[t] = arguments[t]
  2897. var n = o.renderer[r].apply(a, e)
  2898. return !1 === n && (n = i.apply(a, e)), n
  2899. }
  2900. })(n)
  2901. e.renderer = a
  2902. }
  2903. if (o.tokenizer) {
  2904. var i,
  2905. s = fn.defaults.tokenizer || new Gt()
  2906. for (i in o.tokenizer)
  2907. !(function () {
  2908. var r = s[i]
  2909. s[i] = function () {
  2910. for (var e = [], t = arguments.length; t--; ) e[t] = arguments[t]
  2911. var n = o.tokenizer[i].apply(s, e)
  2912. return !1 === n && (n = r.apply(s, e)), n
  2913. }
  2914. })()
  2915. e.tokenizer = s
  2916. }
  2917. o.walkTokens &&
  2918. ((t = fn.defaults.walkTokens),
  2919. (e.walkTokens = function (e) {
  2920. o.walkTokens(e), t && t(e)
  2921. })),
  2922. fn.setOptions(e)
  2923. }),
  2924. (fn.walkTokens = function (e, t) {
  2925. for (var n = 0, r = e; n < r.length; n += 1) {
  2926. var i = r[n]
  2927. switch ((t(i), i.type)) {
  2928. case 'table':
  2929. for (var o = 0, a = i.tokens.header; o < a.length; o += 1) {
  2930. var s = a[o]
  2931. fn.walkTokens(s, t)
  2932. }
  2933. for (var l = 0, c = i.tokens.cells; l < c.length; l += 1)
  2934. for (var u = 0, p = c[l]; u < p.length; u += 1) {
  2935. var h = p[u]
  2936. fn.walkTokens(h, t)
  2937. }
  2938. break
  2939. case 'list':
  2940. fn.walkTokens(i.items, t)
  2941. break
  2942. default:
  2943. i.tokens && fn.walkTokens(i.tokens, t)
  2944. }
  2945. }
  2946. }),
  2947. (fn.parseInline = function (e, t) {
  2948. if (null == e) throw new Error('marked.parseInline(): input parameter is undefined or null')
  2949. if ('string' != typeof e) throw new Error('marked.parseInline(): input parameter is of type ' + Object.prototype.toString.call(e) + ', string expected')
  2950. ;(t = un({}, fn.defaults, t || {})), pn(t)
  2951. try {
  2952. var n = Jt.lexInline(e, t)
  2953. return t.walkTokens && fn.walkTokens(n, t.walkTokens), cn.parseInline(n, t)
  2954. } catch (e) {
  2955. if (((e.message += '\nPlease report this to https://github.com/markedjs/marked.'), t.silent)) return '<p>An error occurred:</p><pre>' + hn(e.message + '', !0) + '</pre>'
  2956. throw e
  2957. }
  2958. }),
  2959. (fn.Parser = cn),
  2960. (fn.parser = cn.parse),
  2961. (fn.Renderer = rn),
  2962. (fn.TextRenderer = on),
  2963. (fn.Lexer = Jt),
  2964. (fn.lexer = Jt.lex),
  2965. (fn.Tokenizer = Gt),
  2966. (fn.Slugger = an)
  2967. var gn = (fn.parse = fn)
  2968. function mn(e, n) {
  2969. if ((void 0 === n && (n = '<ul class="app-sub-sidebar">{inner}</ul>'), !e || !e.length)) return ''
  2970. var r = ''
  2971. return (
  2972. e.forEach(function (e) {
  2973. var t = e.title.replace(/(<([^>]+)>)/g, '')
  2974. ;(r += '<li><a class="section-link" href="' + e.slug + '" title="' + t + '">' + e.title + '</a></li>'), e.children && (r += mn(e.children, n))
  2975. }),
  2976. n.replace('{inner}', r)
  2977. )
  2978. }
  2979. function vn(e, t) {
  2980. return '<p class="' + e + '">' + t.slice(5).trim() + '</p>'
  2981. }
  2982. function yn(e, r) {
  2983. var i = [],
  2984. o = {}
  2985. return (
  2986. e.forEach(function (e) {
  2987. var t = e.level || 1,
  2988. n = t - 1
  2989. r < t || (o[n] ? (o[n].children = (o[n].children || []).concat(e)) : i.push(e), (o[t] = e))
  2990. }),
  2991. i
  2992. )
  2993. }
  2994. var bn = {},
  2995. kn = /[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g
  2996. function wn(e) {
  2997. return e.toLowerCase()
  2998. }
  2999. function xn(e) {
  3000. if ('string' != typeof e) return ''
  3001. var t = e
  3002. .trim()
  3003. .replace(/[A-Z]+/g, wn)
  3004. .replace(/<[^>]+>/g, '')
  3005. .replace(kn, '')
  3006. .replace(/\s/g, '-')
  3007. .replace(/-+/g, '-')
  3008. .replace(/^(\d)/, '_$1'),
  3009. e = bn[t],
  3010. e = l.call(bn, t) ? e + 1 : 0
  3011. return (bn[t] = e) && (t = t + '-' + e), t
  3012. }
  3013. function _n(e, t) {
  3014. return '<img class="emoji" src="https://github.githubassets.com/images/icons/emoji/' + t + '.png" alt="' + t + '" />'
  3015. }
  3016. function Sn(e) {
  3017. void 0 === e && (e = '')
  3018. var r = {}
  3019. return {
  3020. str: (e =
  3021. e &&
  3022. e
  3023. .replace(/^('|")/, '')
  3024. .replace(/('|")$/, '')
  3025. .replace(/(?:^|\s):([\w-]+:?)=?([\w-%]+)?/g, function (e, t, n) {
  3026. return -1 === t.indexOf(':') ? ((r[t] = (n && n.replace(/&quot;/g, '')) || !0), '') : e
  3027. })
  3028. .trim()),
  3029. config: r,
  3030. }
  3031. }
  3032. function An(e) {
  3033. return void 0 === e && (e = ''), e.replace(/(<\/?a.*?>)/gi, '')
  3034. }
  3035. xn.clear = function () {
  3036. bn = {}
  3037. }
  3038. var Tn,
  3039. En = ft(function (e) {
  3040. var a,
  3041. s,
  3042. l,
  3043. c,
  3044. u,
  3045. r,
  3046. t,
  3047. i = (function (l) {
  3048. var c = /\blang(?:uage)?-([\w-]+)\b/i,
  3049. t = 0,
  3050. $ = {
  3051. manual: l.Prism && l.Prism.manual,
  3052. disableWorkerMessageHandler: l.Prism && l.Prism.disableWorkerMessageHandler,
  3053. util: {
  3054. encode: function e(t) {
  3055. return t instanceof F
  3056. ? new F(t.type, e(t.content), t.alias)
  3057. : Array.isArray(t)
  3058. ? t.map(e)
  3059. : t
  3060. .replace(/&/g, '&amp;')
  3061. .replace(/</g, '&lt;')
  3062. .replace(/\u00a0/g, ' ')
  3063. },
  3064. type: function (e) {
  3065. return Object.prototype.toString.call(e).slice(8, -1)
  3066. },
  3067. objId: function (e) {
  3068. return e.__id || Object.defineProperty(e, '__id', { value: ++t }), e.__id
  3069. },
  3070. clone: function n(e, r) {
  3071. var i, t
  3072. switch (((r = r || {}), $.util.type(e))) {
  3073. case 'Object':
  3074. if (((t = $.util.objId(e)), r[t])) return r[t]
  3075. for (var o in ((i = {}), (r[t] = i), e)) e.hasOwnProperty(o) && (i[o] = n(e[o], r))
  3076. return i
  3077. case 'Array':
  3078. return ((t = $.util.objId(e)), r[t])
  3079. ? r[t]
  3080. : ((i = []),
  3081. (r[t] = i),
  3082. e.forEach(function (e, t) {
  3083. i[t] = n(e, r)
  3084. }),
  3085. i)
  3086. default:
  3087. return e
  3088. }
  3089. },
  3090. getLanguage: function (e) {
  3091. for (; e && !c.test(e.className); ) e = e.parentElement
  3092. return e ? (e.className.match(c) || [, 'none'])[1].toLowerCase() : 'none'
  3093. },
  3094. currentScript: function () {
  3095. if ('undefined' == typeof document) return null
  3096. if ('currentScript' in document) return document.currentScript
  3097. try {
  3098. throw new Error()
  3099. } catch (e) {
  3100. var t = (/at [^(\r\n]*\((.*):.+:.+\)$/i.exec(e.stack) || [])[1]
  3101. if (t) {
  3102. var n,
  3103. r = document.getElementsByTagName('script')
  3104. for (n in r) if (r[n].src == t) return r[n]
  3105. }
  3106. return null
  3107. }
  3108. },
  3109. isActive: function (e, t, n) {
  3110. for (var r = 'no-' + t; e; ) {
  3111. var i = e.classList
  3112. if (i.contains(t)) return !0
  3113. if (i.contains(r)) return !1
  3114. e = e.parentElement
  3115. }
  3116. return !!n
  3117. },
  3118. },
  3119. languages: {
  3120. extend: function (e, t) {
  3121. var n,
  3122. r = $.util.clone($.languages[e])
  3123. for (n in t) r[n] = t[n]
  3124. return r
  3125. },
  3126. insertBefore: function (n, e, t, r) {
  3127. var i,
  3128. o = (r = r || $.languages)[n],
  3129. a = {}
  3130. for (i in o)
  3131. if (o.hasOwnProperty(i)) {
  3132. if (i == e) for (var s in t) t.hasOwnProperty(s) && (a[s] = t[s])
  3133. t.hasOwnProperty(i) || (a[i] = o[i])
  3134. }
  3135. var l = r[n]
  3136. return (
  3137. (r[n] = a),
  3138. $.languages.DFS($.languages, function (e, t) {
  3139. t === l && e != n && (this[e] = a)
  3140. }),
  3141. a
  3142. )
  3143. },
  3144. DFS: function e(t, n, r, i) {
  3145. i = i || {}
  3146. var o,
  3147. a,
  3148. s,
  3149. l = $.util.objId
  3150. for (o in t) {
  3151. t.hasOwnProperty(o) &&
  3152. (n.call(t, o, t[o], r || o),
  3153. (a = t[o]),
  3154. 'Object' !== (s = $.util.type(a)) || i[l(a)] ? 'Array' !== s || i[l(a)] || ((i[l(a)] = !0), e(a, n, o, i)) : ((i[l(a)] = !0), e(a, n, null, i)))
  3155. }
  3156. },
  3157. },
  3158. plugins: {},
  3159. highlightAll: function (e, t) {
  3160. $.highlightAllUnder(document, e, t)
  3161. },
  3162. highlightAllUnder: function (e, t, n) {
  3163. var r = { callback: n, container: e, selector: 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code' }
  3164. $.hooks.run('before-highlightall', r),
  3165. (r.elements = Array.prototype.slice.apply(r.container.querySelectorAll(r.selector))),
  3166. $.hooks.run('before-all-elements-highlight', r)
  3167. for (var i, o = 0; (i = r.elements[o++]); ) $.highlightElement(i, !0 === t, r.callback)
  3168. },
  3169. highlightElement: function (e, t, n) {
  3170. var r = $.util.getLanguage(e),
  3171. i = $.languages[r]
  3172. e.className = e.className.replace(c, '').replace(/\s+/g, ' ') + ' language-' + r
  3173. var o = e.parentElement
  3174. o && 'pre' === o.nodeName.toLowerCase() && (o.className = o.className.replace(c, '').replace(/\s+/g, ' ') + ' language-' + r)
  3175. var a = { element: e, language: r, grammar: i, code: e.textContent }
  3176. function s(e) {
  3177. ;(a.highlightedCode = e),
  3178. $.hooks.run('before-insert', a),
  3179. (a.element.innerHTML = a.highlightedCode),
  3180. $.hooks.run('after-highlight', a),
  3181. $.hooks.run('complete', a),
  3182. n && n.call(a.element)
  3183. }
  3184. if (($.hooks.run('before-sanity-check', a), !a.code)) return $.hooks.run('complete', a), void (n && n.call(a.element))
  3185. $.hooks.run('before-highlight', a),
  3186. a.grammar
  3187. ? t && l.Worker
  3188. ? (((t = new Worker($.filename)).onmessage = function (e) {
  3189. s(e.data)
  3190. }),
  3191. t.postMessage(JSON.stringify({ language: a.language, code: a.code, immediateClose: !0 })))
  3192. : s($.highlight(a.code, a.grammar, a.language))
  3193. : s($.util.encode(a.code))
  3194. },
  3195. highlight: function (e, t, n) {
  3196. n = { code: e, grammar: t, language: n }
  3197. return $.hooks.run('before-tokenize', n), (n.tokens = $.tokenize(n.code, n.grammar)), $.hooks.run('after-tokenize', n), F.stringify($.util.encode(n.tokens), n.language)
  3198. },
  3199. tokenize: function (e, t) {
  3200. var n = t.rest
  3201. if (n) {
  3202. for (var r in n) t[r] = n[r]
  3203. delete t.rest
  3204. }
  3205. var i = new o()
  3206. return (
  3207. L(i, i.head, e),
  3208. (function e(t, n, r, i, o, a) {
  3209. for (var s in r)
  3210. if (r.hasOwnProperty(s) && r[s]) {
  3211. var l = r[s]
  3212. l = Array.isArray(l) ? l : [l]
  3213. for (var c = 0; c < l.length; ++c) {
  3214. if (a && a.cause == s + ',' + c) return
  3215. var u,
  3216. p = l[c],
  3217. h = p.inside,
  3218. d = !!p.lookbehind,
  3219. f = !!p.greedy,
  3220. g = p.alias
  3221. f && !p.pattern.global && ((u = p.pattern.toString().match(/[imsuy]*$/)[0]), (p.pattern = RegExp(p.pattern.source, u + 'g')))
  3222. for (var m = p.pattern || p, v = i.next, y = o; v !== n.tail && !(a && y >= a.reach); y += v.value.length, v = v.next) {
  3223. var b = v.value
  3224. if (n.length > t.length) return
  3225. if (!(b instanceof F)) {
  3226. var k,
  3227. w = 1
  3228. if (f) {
  3229. if (!(k = C(m, y, t, d))) break
  3230. var x = k.index,
  3231. _ = k.index + k[0].length,
  3232. S = y
  3233. for (S += v.value.length; S <= x; ) (v = v.next), (S += v.value.length)
  3234. if (((S -= v.value.length), (y = S), v.value instanceof F)) continue
  3235. for (var A = v; A !== n.tail && (S < _ || 'string' == typeof A.value); A = A.next) w++, (S += A.value.length)
  3236. w--, (b = t.slice(y, S)), (k.index -= y)
  3237. } else if (!(k = C(m, 0, b, d))) continue
  3238. var x = k.index,
  3239. T = k[0],
  3240. E = b.slice(0, x),
  3241. R = b.slice(x + T.length),
  3242. O = y + b.length
  3243. a && O > a.reach && (a.reach = O)
  3244. var b = v.prev
  3245. E && ((b = L(n, b, E)), (y += E.length)), z(n, b, w)
  3246. var T = new F(s, h ? $.tokenize(T, h) : T, g, T)
  3247. ;(v = L(n, b, T)), R && L(n, v, R), 1 < w && e(t, n, r, v.prev, y, { cause: s + ',' + c, reach: O })
  3248. }
  3249. }
  3250. }
  3251. }
  3252. })(e, i, t, i.head, 0),
  3253. (function (e) {
  3254. var t = [],
  3255. n = e.head.next
  3256. for (; n !== e.tail; ) t.push(n.value), (n = n.next)
  3257. return t
  3258. })(i)
  3259. )
  3260. },
  3261. hooks: {
  3262. all: {},
  3263. add: function (e, t) {
  3264. var n = $.hooks.all
  3265. ;(n[e] = n[e] || []), n[e].push(t)
  3266. },
  3267. run: function (e, t) {
  3268. var n = $.hooks.all[e]
  3269. if (n && n.length) for (var r, i = 0; (r = n[i++]); ) r(t)
  3270. },
  3271. },
  3272. Token: F,
  3273. }
  3274. function F(e, t, n, r) {
  3275. ;(this.type = e), (this.content = t), (this.alias = n), (this.length = 0 | (r || '').length)
  3276. }
  3277. function C(e, t, n, r) {
  3278. e.lastIndex = t
  3279. n = e.exec(n)
  3280. return n && r && n[1] && ((r = n[1].length), (n.index += r), (n[0] = n[0].slice(r))), n
  3281. }
  3282. function o() {
  3283. var e = { value: null, prev: null, next: null },
  3284. t = { value: null, prev: e, next: null }
  3285. ;(e.next = t), (this.head = e), (this.tail = t), (this.length = 0)
  3286. }
  3287. function L(e, t, n) {
  3288. var r = t.next,
  3289. n = { value: n, prev: t, next: r }
  3290. return (t.next = n), (r.prev = n), e.length++, n
  3291. }
  3292. function z(e, t, n) {
  3293. for (var r = t.next, i = 0; i < n && r !== e.tail; i++) r = r.next
  3294. ;((t.next = r).prev = t), (e.length -= i)
  3295. }
  3296. if (
  3297. ((l.Prism = $),
  3298. (F.stringify = function t(e, n) {
  3299. if ('string' == typeof e) return e
  3300. if (Array.isArray(e)) {
  3301. var r = ''
  3302. return (
  3303. e.forEach(function (e) {
  3304. r += t(e, n)
  3305. }),
  3306. r
  3307. )
  3308. }
  3309. var i = { type: e.type, content: t(e.content, n), tag: 'span', classes: ['token', e.type], attributes: {}, language: n },
  3310. e = e.alias
  3311. e && (Array.isArray(e) ? Array.prototype.push.apply(i.classes, e) : i.classes.push(e)), $.hooks.run('wrap', i)
  3312. var o,
  3313. a = ''
  3314. for (o in i.attributes) a += ' ' + o + '="' + (i.attributes[o] || '').replace(/"/g, '&quot;') + '"'
  3315. return '<' + i.tag + ' class="' + i.classes.join(' ') + '"' + a + '>' + i.content + '</' + i.tag + '>'
  3316. }),
  3317. !l.document)
  3318. )
  3319. return (
  3320. l.addEventListener &&
  3321. ($.disableWorkerMessageHandler ||
  3322. l.addEventListener(
  3323. 'message',
  3324. function (e) {
  3325. var t = JSON.parse(e.data),
  3326. n = t.language,
  3327. e = t.code,
  3328. t = t.immediateClose
  3329. l.postMessage($.highlight(e, $.languages[n], n)), t && l.close()
  3330. },
  3331. !1
  3332. )),
  3333. $
  3334. )
  3335. var e,
  3336. n = $.util.currentScript()
  3337. function r() {
  3338. $.manual || $.highlightAll()
  3339. }
  3340. return (
  3341. n && (($.filename = n.src), n.hasAttribute('data-manual') && ($.manual = !0)),
  3342. $.manual ||
  3343. ('loading' === (e = document.readyState) || ('interactive' === e && n && n.defer)
  3344. ? document.addEventListener('DOMContentLoaded', r)
  3345. : window.requestAnimationFrame
  3346. ? window.requestAnimationFrame(r)
  3347. : window.setTimeout(r, 16)),
  3348. $
  3349. )
  3350. })('undefined' != typeof window ? window : 'undefined' != typeof WorkerGlobalScope && self instanceof WorkerGlobalScope ? self : {})
  3351. function p(e, t) {
  3352. var n = (n = e.className).replace(r, ' ') + ' language-' + t
  3353. e.className = n.replace(/\s+/g, ' ').trim()
  3354. }
  3355. e.exports && (e.exports = i),
  3356. void 0 !== dt && (dt.Prism = i),
  3357. (i.languages.markup = {
  3358. comment: /<!--[\s\S]*?-->/,
  3359. prolog: /<\?[\s\S]+?\?>/,
  3360. doctype: {
  3361. pattern: /<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,
  3362. greedy: !0,
  3363. inside: {
  3364. 'internal-subset': { pattern: /(\[)[\s\S]+(?=\]>$)/, lookbehind: !0, greedy: !0, inside: null },
  3365. string: { pattern: /"[^"]*"|'[^']*'/, greedy: !0 },
  3366. punctuation: /^<!|>$|[[\]]/,
  3367. 'doctype-tag': /^DOCTYPE/,
  3368. name: /[^\s<>'"]+/,
  3369. },
  3370. },
  3371. cdata: /<!\[CDATA\[[\s\S]*?]]>/i,
  3372. tag: {
  3373. pattern: /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,
  3374. greedy: !0,
  3375. inside: {
  3376. tag: { pattern: /^<\/?[^\s>\/]+/, inside: { punctuation: /^<\/?/, namespace: /^[^\s>\/:]+:/ } },
  3377. 'attr-value': { pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/, inside: { punctuation: [{ pattern: /^=/, alias: 'attr-equals' }, /"|'/] } },
  3378. punctuation: /\/?>/,
  3379. 'attr-name': { pattern: /[^\s>\/]+/, inside: { namespace: /^[^\s>\/:]+:/ } },
  3380. },
  3381. },
  3382. entity: [{ pattern: /&[\da-z]{1,8};/i, alias: 'named-entity' }, /&#x?[\da-f]{1,8};/i],
  3383. }),
  3384. (i.languages.markup.tag.inside['attr-value'].inside.entity = i.languages.markup.entity),
  3385. (i.languages.markup.doctype.inside['internal-subset'].inside = i.languages.markup),
  3386. i.hooks.add('wrap', function (e) {
  3387. 'entity' === e.type && (e.attributes.title = e.content.replace(/&amp;/, '&'))
  3388. }),
  3389. Object.defineProperty(i.languages.markup.tag, 'addInlined', {
  3390. value: function (e, t) {
  3391. var n = {}
  3392. ;(n['language-' + t] = { pattern: /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i, lookbehind: !0, inside: i.languages[t] }), (n.cdata = /^<!\[CDATA\[|\]\]>$/i)
  3393. n = { 'included-cdata': { pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i, inside: n } }
  3394. n['language-' + t] = { pattern: /[\s\S]+/, inside: i.languages[t] }
  3395. t = {}
  3396. ;(t[e] = {
  3397. pattern: RegExp(
  3398. /(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g, function () {
  3399. return e
  3400. }),
  3401. 'i'
  3402. ),
  3403. lookbehind: !0,
  3404. greedy: !0,
  3405. inside: n,
  3406. }),
  3407. i.languages.insertBefore('markup', 'cdata', t)
  3408. },
  3409. }),
  3410. (i.languages.html = i.languages.markup),
  3411. (i.languages.mathml = i.languages.markup),
  3412. (i.languages.svg = i.languages.markup),
  3413. (i.languages.xml = i.languages.extend('markup', {})),
  3414. (i.languages.ssml = i.languages.xml),
  3415. (i.languages.atom = i.languages.xml),
  3416. (i.languages.rss = i.languages.xml),
  3417. (function (e) {
  3418. var t = /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/
  3419. ;(e.languages.css = {
  3420. comment: /\/\*[\s\S]*?\*\//,
  3421. atrule: {
  3422. pattern: /@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,
  3423. inside: {
  3424. rule: /^@[\w-]+/,
  3425. 'selector-function-argument': {
  3426. pattern: /(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,
  3427. lookbehind: !0,
  3428. alias: 'selector',
  3429. },
  3430. keyword: { pattern: /(^|[^\w-])(?:and|not|only|or)(?![\w-])/, lookbehind: !0 },
  3431. },
  3432. },
  3433. url: {
  3434. pattern: RegExp('\\burl\\((?:' + t.source + '|' + /(?:[^\\\r\n()"']|\\[\s\S])*/.source + ')\\)', 'i'),
  3435. greedy: !0,
  3436. inside: { function: /^url/i, punctuation: /^\(|\)$/, string: { pattern: RegExp('^' + t.source + '$'), alias: 'url' } },
  3437. },
  3438. selector: RegExp('[^{}\\s](?:[^{};"\'\\s]|\\s+(?![\\s{])|' + t.source + ')*(?=\\s*\\{)'),
  3439. string: { pattern: t, greedy: !0 },
  3440. property: /(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,
  3441. important: /!important\b/i,
  3442. function: /[-a-z0-9]+(?=\()/i,
  3443. punctuation: /[(){};:,]/,
  3444. }),
  3445. (e.languages.css.atrule.inside.rest = e.languages.css)
  3446. t = e.languages.markup
  3447. t &&
  3448. (t.tag.addInlined('style', 'css'),
  3449. e.languages.insertBefore(
  3450. 'inside',
  3451. 'attr-value',
  3452. {
  3453. 'style-attr': {
  3454. pattern: /(^|["'\s])style\s*=\s*(?:"[^"]*"|'[^']*')/i,
  3455. lookbehind: !0,
  3456. inside: {
  3457. 'attr-value': {
  3458. pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,
  3459. inside: {
  3460. style: { pattern: /(["'])[\s\S]+(?=["']$)/, lookbehind: !0, alias: 'language-css', inside: e.languages.css },
  3461. punctuation: [{ pattern: /^=/, alias: 'attr-equals' }, /"|'/],
  3462. },
  3463. },
  3464. 'attr-name': /^style/i,
  3465. },
  3466. },
  3467. },
  3468. t.tag
  3469. ))
  3470. })(i),
  3471. (i.languages.clike = {
  3472. comment: [
  3473. { pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/, lookbehind: !0, greedy: !0 },
  3474. { pattern: /(^|[^\\:])\/\/.*/, lookbehind: !0, greedy: !0 },
  3475. ],
  3476. string: { pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, greedy: !0 },
  3477. 'class-name': { pattern: /(\b(?:class|interface|extends|implements|trait|instanceof|new)\s+|\bcatch\s+\()[\w.\\]+/i, lookbehind: !0, inside: { punctuation: /[.\\]/ } },
  3478. keyword: /\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,
  3479. boolean: /\b(?:true|false)\b/,
  3480. function: /\w+(?=\()/,
  3481. number: /\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,
  3482. operator: /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,
  3483. punctuation: /[{}[\];(),.:]/,
  3484. }),
  3485. (i.languages.javascript = i.languages.extend('clike', {
  3486. 'class-name': [
  3487. i.languages.clike['class-name'],
  3488. { pattern: /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:prototype|constructor))/, lookbehind: !0 },
  3489. ],
  3490. keyword: [
  3491. { pattern: /((?:^|})\s*)(?:catch|finally)\b/, lookbehind: !0 },
  3492. {
  3493. pattern:
  3494. /(^|[^.]|\.\.\.\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|set)(?=\s*[\[$\w\xA0-\uFFFF])|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,
  3495. lookbehind: !0,
  3496. },
  3497. ],
  3498. function: /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,
  3499. 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)?)+)?/,
  3500. operator: /--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/,
  3501. })),
  3502. (i.languages.javascript['class-name'][0].pattern = /(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/),
  3503. i.languages.insertBefore('javascript', 'keyword', {
  3504. regex: {
  3505. pattern:
  3506. /((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,
  3507. lookbehind: !0,
  3508. greedy: !0,
  3509. inside: {
  3510. 'regex-source': { pattern: /^(\/)[\s\S]+(?=\/[a-z]*$)/, lookbehind: !0, alias: 'language-regex', inside: i.languages.regex },
  3511. 'regex-flags': /[a-z]+$/,
  3512. 'regex-delimiter': /^\/|\/$/,
  3513. },
  3514. },
  3515. 'function-variable': {
  3516. pattern:
  3517. /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,
  3518. alias: 'function',
  3519. },
  3520. parameter: [
  3521. {
  3522. pattern: /(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,
  3523. lookbehind: !0,
  3524. inside: i.languages.javascript,
  3525. },
  3526. { pattern: /(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i, inside: i.languages.javascript },
  3527. { pattern: /(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/, lookbehind: !0, inside: i.languages.javascript },
  3528. {
  3529. pattern:
  3530. /((?:\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]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,
  3531. lookbehind: !0,
  3532. inside: i.languages.javascript,
  3533. },
  3534. ],
  3535. constant: /\b[A-Z](?:[A-Z_]|\dx?)*\b/,
  3536. }),
  3537. i.languages.insertBefore('javascript', 'string', {
  3538. 'template-string': {
  3539. pattern: /`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\${)[^\\`])*`/,
  3540. greedy: !0,
  3541. inside: {
  3542. 'template-punctuation': { pattern: /^`|`$/, alias: 'string' },
  3543. interpolation: {
  3544. pattern: /((?:^|[^\\])(?:\\{2})*)\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,
  3545. lookbehind: !0,
  3546. inside: { 'interpolation-punctuation': { pattern: /^\${|}$/, alias: 'punctuation' }, rest: i.languages.javascript },
  3547. },
  3548. string: /[\s\S]+/,
  3549. },
  3550. },
  3551. }),
  3552. i.languages.markup && i.languages.markup.tag.addInlined('script', 'javascript'),
  3553. (i.languages.js = i.languages.javascript),
  3554. 'undefined' != typeof self &&
  3555. self.Prism &&
  3556. self.document &&
  3557. (Element.prototype.matches || (Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector),
  3558. (a = window.Prism),
  3559. (s = { js: 'javascript', py: 'python', rb: 'ruby', ps1: 'powershell', psm1: 'powershell', sh: 'bash', bat: 'batch', h: 'c', tex: 'latex' }),
  3560. (u = 'pre[data-src]:not([' + (l = 'data-src-status') + '="loaded"]):not([' + l + '="' + (c = 'loading') + '"])'),
  3561. (r = /\blang(?:uage)?-([\w-]+)\b/i),
  3562. a.hooks.add('before-highlightall', function (e) {
  3563. e.selector += ', ' + u
  3564. }),
  3565. a.hooks.add('before-sanity-check', function (e) {
  3566. var t,
  3567. n,
  3568. r,
  3569. i,
  3570. o = e.element
  3571. o.matches(u) &&
  3572. ((e.code = ''),
  3573. o.setAttribute(l, c),
  3574. ((t = o.appendChild(document.createElement('CODE'))).textContent = 'Loading…'),
  3575. (n = o.getAttribute('data-src')),
  3576. 'none' === (e = e.language) && ((r = (/\.(\w+)$/.exec(n) || [, 'none'])[1]), (e = s[r] || r)),
  3577. p(t, e),
  3578. p(o, e),
  3579. (r = a.plugins.autoloader) && r.loadLanguages(e),
  3580. (i = new XMLHttpRequest()).open('GET', n, !0),
  3581. (i.onreadystatechange = function () {
  3582. 4 == i.readyState &&
  3583. (i.status < 400 && i.responseText
  3584. ? (o.setAttribute(l, 'loaded'), (t.textContent = i.responseText), a.highlightElement(t))
  3585. : (o.setAttribute(l, 'failed'),
  3586. 400 <= i.status
  3587. ? (t.textContent = '✖ Error ' + i.status + ' while fetching file: ' + i.statusText)
  3588. : (t.textContent = '✖ Error: File does not exist or is empty')))
  3589. }),
  3590. i.send(null))
  3591. }),
  3592. (t = !(a.plugins.fileHighlight = {
  3593. highlight: function (e) {
  3594. for (var t, n = (e || document).querySelectorAll(u), r = 0; (t = n[r++]); ) a.highlightElement(t)
  3595. },
  3596. })),
  3597. (a.fileHighlight = function () {
  3598. t || (console.warn('Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead.'), (t = !0)),
  3599. a.plugins.fileHighlight.highlight.apply(this, arguments)
  3600. }))
  3601. })
  3602. function Rn(e, t) {
  3603. return '___' + e.toUpperCase() + t + '___'
  3604. }
  3605. ;(Tn = Prism),
  3606. Object.defineProperties((Tn.languages['markup-templating'] = {}), {
  3607. buildPlaceholders: {
  3608. value: function (r, i, e, o) {
  3609. var a
  3610. r.language === i &&
  3611. ((a = r.tokenStack = []),
  3612. (r.code = r.code.replace(e, function (e) {
  3613. if ('function' == typeof o && !o(e)) return e
  3614. for (var t, n = a.length; -1 !== r.code.indexOf((t = Rn(i, n))); ) ++n
  3615. return (a[n] = e), t
  3616. })),
  3617. (r.grammar = Tn.languages.markup))
  3618. },
  3619. },
  3620. tokenizePlaceholders: {
  3621. value: function (c, u) {
  3622. var p, h
  3623. c.language === u &&
  3624. c.tokenStack &&
  3625. ((c.grammar = Tn.languages[u]),
  3626. (p = 0),
  3627. (h = Object.keys(c.tokenStack)),
  3628. (function e(t) {
  3629. for (var n = 0; n < t.length && !(p >= h.length); n++) {
  3630. var r,
  3631. i,
  3632. o,
  3633. a,
  3634. s,
  3635. l = t[n]
  3636. 'string' == typeof l || (l.content && 'string' == typeof l.content)
  3637. ? ((i = h[p]),
  3638. (o = c.tokenStack[i]),
  3639. (r = 'string' == typeof l ? l : l.content),
  3640. (s = Rn(u, i)),
  3641. -1 < (a = r.indexOf(s)) &&
  3642. (++p,
  3643. (i = r.substring(0, a)),
  3644. (o = new Tn.Token(u, Tn.tokenize(o, c.grammar), 'language-' + u, o)),
  3645. (a = r.substring(a + s.length)),
  3646. (s = []),
  3647. i && s.push.apply(s, e([i])),
  3648. s.push(o),
  3649. a && s.push.apply(s, e([a])),
  3650. 'string' == typeof l ? t.splice.apply(t, [n, 1].concat(s)) : (l.content = s)))
  3651. : l.content && e(l.content)
  3652. }
  3653. return t
  3654. })(c.tokens))
  3655. },
  3656. },
  3657. })
  3658. function On(i, e) {
  3659. var o = this
  3660. ;(this.config = i),
  3661. (this.router = e),
  3662. (this.cacheTree = {}),
  3663. (this.toc = []),
  3664. (this.cacheTOC = {}),
  3665. (this.linkTarget = i.externalLinkTarget || '_blank'),
  3666. (this.linkRel = '_blank' === this.linkTarget ? i.externalLinkRel || 'noopener' : ''),
  3667. (this.contentBase = e.getBasePath())
  3668. var t = this._initRenderer()
  3669. this.heading = t.heading
  3670. var a = r((e = i.markdown || {})) ? e(gn, t) : (gn.setOptions(y(e, { renderer: y(t, e.renderer) })), gn)
  3671. ;(this._marked = a),
  3672. (this.compile = function (n) {
  3673. var r = !0,
  3674. e = s(function (e) {
  3675. r = !1
  3676. var t = ''
  3677. return n
  3678. ? ((t = c(n) ? a(n) : a.parser(n)),
  3679. (t = i.noEmoji
  3680. ? t
  3681. : t
  3682. .replace(/:\+1:/g, ':thumbsup:')
  3683. .replace(/:-1:/g, ':thumbsdown:')
  3684. .replace(/<(pre|template|code)[^>]*?>[\s\S]+?<\/(pre|template|code)>/g, function (e) {
  3685. return e.replace(/:/g, '__colon__')
  3686. })
  3687. .replace(/:(\w+?):/gi, window.emojify || _n)
  3688. .replace(/__colon__/g, ':')),
  3689. xn.clear(),
  3690. t)
  3691. : n
  3692. })(n),
  3693. t = o.router.parse().file
  3694. return r ? (o.toc = o.cacheTOC[t]) : (o.cacheTOC[t] = [].concat(o.toc)), e
  3695. })
  3696. }
  3697. var $n = {},
  3698. Fn = {
  3699. markdown: function (e) {
  3700. return { url: e }
  3701. },
  3702. mermaid: function (e) {
  3703. return { url: e }
  3704. },
  3705. iframe: function (e, t) {
  3706. return { html: '<iframe src="' + e + '" ' + (t || 'width=100% height=400') + '></iframe>' }
  3707. },
  3708. video: function (e, t) {
  3709. return { html: '<video src="' + e + '" ' + (t || 'controls') + '>Not Support</video>' }
  3710. },
  3711. audio: function (e, t) {
  3712. return { html: '<audio src="' + e + '" ' + (t || 'controls') + '>Not Support</audio>' }
  3713. },
  3714. code: function (e, t) {
  3715. var n = e.match(/\.(\w+)$/)
  3716. return 'md' === (n = t || (n && n[1])) && (n = 'markdown'), { url: e, lang: n }
  3717. },
  3718. }
  3719. ;(On.prototype.compileEmbed = function (e, t) {
  3720. var n,
  3721. r,
  3722. i = Sn(t),
  3723. o = i.str,
  3724. i = i.config
  3725. if (((t = o), i.include))
  3726. return (
  3727. O(e) || (e = N(this.contentBase, F(this.router.getCurrentPath()), e)),
  3728. i.type && (r = Fn[i.type])
  3729. ? ((n = r.call(this, e, t)).type = i.type)
  3730. : ((r = 'code'),
  3731. /\.(md|markdown)/.test(e)
  3732. ? (r = 'markdown')
  3733. : /\.mmd/.test(e)
  3734. ? (r = 'mermaid')
  3735. : /\.html?/.test(e)
  3736. ? (r = 'iframe')
  3737. : /\.(mp4|ogg)/.test(e)
  3738. ? (r = 'video')
  3739. : /\.mp3/.test(e) && (r = 'audio'),
  3740. ((n = Fn[r].call(this, e, t)).type = r)),
  3741. (n.fragment = i.fragment),
  3742. n
  3743. )
  3744. }),
  3745. (On.prototype._matchNotCompileLink = function (e) {
  3746. for (var t = this.config.noCompileLinks || [], n = 0; n < t.length; n++) {
  3747. var r = t[n]
  3748. if (($n[r] || ($n[r] = new RegExp('^' + r + '$'))).test(e)) return e
  3749. }
  3750. }),
  3751. (On.prototype._initRenderer = function () {
  3752. var a,
  3753. s,
  3754. l,
  3755. c,
  3756. u,
  3757. p,
  3758. e = new gn.Renderer(),
  3759. t = this.linkTarget,
  3760. n = this.linkRel,
  3761. o = this.router,
  3762. r = this.contentBase,
  3763. h = this,
  3764. i = {}
  3765. return (
  3766. (i.heading = e.heading =
  3767. function (e, t) {
  3768. var n = Sn(e),
  3769. r = n.str,
  3770. i = n.config,
  3771. e = { level: t, title: An(r) }
  3772. ;/<!-- {docsify-ignore} -->/g.test(r) && ((r = r.replace('\x3c!-- {docsify-ignore} --\x3e', '')), (e.title = An(r)), (e.ignoreSubHeading = !0)),
  3773. /{docsify-ignore}/g.test(r) && ((r = r.replace('{docsify-ignore}', '')), (e.title = An(r)), (e.ignoreSubHeading = !0)),
  3774. /<!-- {docsify-ignore-all} -->/g.test(r) && ((r = r.replace('\x3c!-- {docsify-ignore-all} --\x3e', '')), (e.title = An(r)), (e.ignoreAllSubs = !0)),
  3775. /{docsify-ignore-all}/g.test(r) && ((r = r.replace('{docsify-ignore-all}', '')), (e.title = An(r)), (e.ignoreAllSubs = !0))
  3776. ;(n = xn(i.id || r)), (i = o.toURL(o.getCurrentPath(), { id: n }))
  3777. return (e.slug = i), h.toc.push(e), '<h' + t + ' id="' + n + '"><a href="' + i + '" data-id="' + n + '" class="anchor"><span>' + r + '</span></a></h' + t + '>'
  3778. }),
  3779. (i.code = { renderer: e }.renderer.code =
  3780. function (e, t) {
  3781. void 0 === t && (t = 'markup')
  3782. var n = En.languages[t] || En.languages.markup
  3783. return '<pre v-pre data-lang="' + t + '"><code class="lang-' + t + '">' + En.highlight(e.replace(/@DOCSIFY_QM@/g, '`'), n, t) + '</code></pre>'
  3784. }),
  3785. (i.link =
  3786. ((n = (t = { renderer: e, router: o, linkTarget: t, linkRel: n, compilerClass: h }).renderer),
  3787. (a = t.router),
  3788. (s = t.linkTarget),
  3789. (l = t.linkRel),
  3790. (c = t.compilerClass),
  3791. (n.link = function (e, t, n) {
  3792. void 0 === t && (t = '')
  3793. var r = [],
  3794. i = Sn(t),
  3795. o = i.str,
  3796. i = i.config
  3797. return (
  3798. (s = i.target || s),
  3799. (l = '_blank' === s ? c.config.externalLinkRel || 'noopener' : ''),
  3800. (t = o),
  3801. O(e) || c._matchNotCompileLink(e) || i.ignore
  3802. ? (O(e) || './' !== e.slice(0, 2) || (e = document.URL.replace(/\/(?!.*\/).*/, '/').replace('#/./', '') + e),
  3803. r.push(0 === e.indexOf('mailto:') ? '' : 'target="' + s + '"'),
  3804. r.push(0 !== e.indexOf('mailto:') && '' !== l ? ' rel="' + l + '"' : ''))
  3805. : (e === c.config.homepage && (e = 'README'), (e = a.toURL(e, null, a.getCurrentPath()))),
  3806. i.crossorgin && '_self' === s && 'history' === c.config.routerMode && -1 === c.config.crossOriginLinks.indexOf(e) && c.config.crossOriginLinks.push(e),
  3807. i.disabled && (r.push('disabled'), (e = 'javascript:void(0)')),
  3808. i.class && r.push('class="' + i.class + '"'),
  3809. i.id && r.push('id="' + i.id + '"'),
  3810. t && r.push('title="' + t + '"'),
  3811. '<a href="' + e + '" ' + r.join(' ') + '>' + n + '</a>'
  3812. )
  3813. }))),
  3814. (i.paragraph = { renderer: e }.renderer.paragraph =
  3815. function (e) {
  3816. e = /^!&gt;/.test(e) ? vn('tip', e) : /^\?&gt;/.test(e) ? vn('warn', e) : '<p>' + e + '</p>'
  3817. return e
  3818. }),
  3819. (i.image =
  3820. ((r = (n = { renderer: e, contentBase: r, router: o }).renderer),
  3821. (u = n.contentBase),
  3822. (p = n.router),
  3823. (r.image = function (e, t, n) {
  3824. var r = e,
  3825. i = [],
  3826. o = Sn(t),
  3827. a = o.str,
  3828. o = o.config
  3829. return (
  3830. (t = a),
  3831. o['no-zoom'] && i.push('data-no-zoom'),
  3832. t && i.push('title="' + t + '"'),
  3833. o.size && ((t = (a = o.size.split('x'))[0]), (a = a[1]) ? i.push('width="' + t + '" height="' + a + '"') : i.push('width="' + t + '"')),
  3834. o.class && i.push('class="' + o.class + '"'),
  3835. o.id && i.push('id="' + o.id + '"'),
  3836. O(e) || (r = N(u, F(p.getCurrentPath()), e)),
  3837. 0 < i.length
  3838. ? '<img src="' + r + '" data-origin="' + e + '" alt="' + n + '" ' + i.join(' ') + ' />'
  3839. : '<img src="' + r + '" data-origin="' + e + '" alt="' + n + '"' + i + '>'
  3840. )
  3841. }))),
  3842. (i.list = { renderer: e }.renderer.list =
  3843. function (e, t, n) {
  3844. t = t ? 'ol' : 'ul'
  3845. return (
  3846. '<' +
  3847. t +
  3848. ' ' +
  3849. [/<li class="task-list-item">/.test(e.split('class="task-list"')[0]) ? 'class="task-list"' : '', n && 1 < n ? 'start="' + n + '"' : ''].join(' ').trim() +
  3850. '>' +
  3851. e +
  3852. '</' +
  3853. t +
  3854. '>'
  3855. )
  3856. }),
  3857. (i.listitem = { renderer: e }.renderer.listitem =
  3858. function (e) {
  3859. return /^(<input.*type="checkbox"[^>]*>)/.test(e) ? '<li class="task-list-item"><label>' + e + '</label></li>' : '<li>' + e + '</li>'
  3860. }),
  3861. (e.origin = i),
  3862. e
  3863. )
  3864. }),
  3865. (On.prototype.sidebar = function (e, t) {
  3866. var n = this.toc,
  3867. r = this.router.getCurrentPath(),
  3868. i = ''
  3869. if (e) i = this.compile(e)
  3870. else {
  3871. for (var o = 0; o < n.length; o++)
  3872. if (n[o].ignoreSubHeading) {
  3873. var a = n[o].level
  3874. n.splice(o, 1)
  3875. for (var s = o; s < n.length && a < n[s].level; s++) n.splice(s, 1) && s-- && o++
  3876. o--
  3877. }
  3878. ;(t = this.cacheTree[r] || yn(n, t)), (i = mn(t, '<ul>{inner}</ul>'))
  3879. this.cacheTree[r] = t
  3880. }
  3881. return i
  3882. }),
  3883. (On.prototype.subSidebar = function (e) {
  3884. if (e) {
  3885. var t = this.router.getCurrentPath(),
  3886. n = this.cacheTree,
  3887. r = this.toc
  3888. r[0] && r[0].ignoreAllSubs && r.splice(0), r[0] && 1 === r[0].level && r.shift()
  3889. for (var i = 0; i < r.length; i++) r[i].ignoreSubHeading && r.splice(i, 1) && i--
  3890. e = n[t] || yn(r, e)
  3891. return (n[t] = e), (this.toc = []), mn(e)
  3892. }
  3893. this.toc = []
  3894. }),
  3895. (On.prototype.header = function (e, t) {
  3896. return this.heading(e, t)
  3897. }),
  3898. (On.prototype.article = function (e) {
  3899. return this.compile(e)
  3900. }),
  3901. (On.prototype.cover = function (e) {
  3902. var t = this.toc.slice(),
  3903. e = this.compile(e)
  3904. return (this.toc = t.slice()), e
  3905. })
  3906. var Cn,
  3907. Ln = function (e) {
  3908. var t = (function (e) {
  3909. e = e.match(/^[ \t]*(?=\S)/gm)
  3910. return e
  3911. ? e.reduce(function (e, t) {
  3912. return Math.min(e, t.length)
  3913. }, 1 / 0)
  3914. : 0
  3915. })(e)
  3916. if (0 === t) return e
  3917. t = new RegExp('^[ \\t]{' + t + '}', 'gm')
  3918. return e.replace(t, '')
  3919. },
  3920. zn = {}
  3921. function Nn(e, r) {
  3922. var o = e.compiler,
  3923. i = e.raw
  3924. void 0 === i && (i = '')
  3925. var t = e.fetch,
  3926. e = zn[i]
  3927. if (e) {
  3928. var n = e.slice()
  3929. return (n.links = e.links), r(n)
  3930. }
  3931. var n = o._marked,
  3932. a = n.lexer(i),
  3933. s = [],
  3934. l = n.Lexer.rules.inline.link,
  3935. c = a.links
  3936. a.forEach(function (e, i) {
  3937. 'paragraph' === e.type &&
  3938. (e.text = e.text.replace(new RegExp(l.source, 'g'), function (e, t, n, r) {
  3939. r = o.compileEmbed(n, r)
  3940. return r && s.push({ index: i, embed: r }), e
  3941. }))
  3942. })
  3943. var u = []
  3944. !(function (e, o) {
  3945. var t,
  3946. n = e.embedTokens,
  3947. a = e.compile,
  3948. s = (e.fetch, 0),
  3949. l = 1
  3950. if (!n.length) return o({})
  3951. for (; (t = n[s++]); ) {
  3952. var r = (function (i) {
  3953. return function (e) {
  3954. var t, n, r
  3955. e &&
  3956. ('markdown' === i.embed.type
  3957. ? ((n = i.embed.url.split('/')).pop(),
  3958. (n = n.join('/')),
  3959. (e = e.replace(/\[([^[\]]+)\]\(([^)]+)\)/g, function (e) {
  3960. var t = e.indexOf('(')
  3961. return '(.' === e.slice(t, t + 2)
  3962. ? e.substring(0, t) + '(' + window.location.protocol + '//' + window.location.host + n + '/' + e.substring(t + 1, e.length - 1) + ')'
  3963. : e
  3964. })),
  3965. !0 === (($docsify.frontMatter || {}).installed || !1) && (e = $docsify.frontMatter.parseMarkdown(e)),
  3966. (t = a.lexer(e)))
  3967. : 'code' === i.embed.type
  3968. ? (i.embed.fragment &&
  3969. ((r = i.embed.fragment),
  3970. (r = new RegExp('(?:###|\\/\\/\\/)\\s*\\[' + r + '\\]([\\s\\S]*)(?:###|\\/\\/\\/)\\s*\\[' + r + '\\]')),
  3971. (e = Ln((e.match(r) || [])[1] || '').trim())),
  3972. (t = a.lexer('```' + i.embed.lang + '\n' + e.replace(/`/g, '@DOCSIFY_QM@') + '\n```\n')))
  3973. : 'mermaid' === i.embed.type
  3974. ? ((t = [{ type: 'html', text: '<div class="mermaid">\n' + e + '\n</div>' }]).links = {})
  3975. : ((t = [{ type: 'html', text: e }]).links = {})),
  3976. o({ token: i, embedToken: t }),
  3977. ++l >= s && o({})
  3978. }
  3979. })(t)
  3980. t.embed.url ? ce(t.embed.url).then(r) : r(t.embed.html)
  3981. }
  3982. })({ compile: n, embedTokens: s, fetch: t }, function (e) {
  3983. var t,
  3984. n = e.embedToken,
  3985. e = e.token
  3986. e
  3987. ? ((t = e.index),
  3988. u.forEach(function (e) {
  3989. t > e.start && (t += e.length)
  3990. }),
  3991. y(c, n.links),
  3992. (a = a.slice(0, t).concat(n, a.slice(t + 1))),
  3993. u.push({ start: t, length: n.length - 1 }))
  3994. : ((zn[i] = a.concat()), (a.links = zn[i].links = c), r(a))
  3995. })
  3996. }
  3997. function Mn(e, t, n) {
  3998. var r, i, o, a
  3999. return (
  4000. (t =
  4001. 'function' == typeof n
  4002. ? n(t)
  4003. : 'string' == typeof n
  4004. ? ((o = []),
  4005. (a = 0),
  4006. (r = n).replace(B, function (t, e, n) {
  4007. o.push(r.substring(a, n - 1)),
  4008. (a = n += t.length + 1),
  4009. o.push(
  4010. (i && i[t]) ||
  4011. function (e) {
  4012. return ('00' + ('string' == typeof Z[t] ? e[Z[t]]() : Z[t](e))).slice(-t.length)
  4013. }
  4014. )
  4015. }),
  4016. a !== r.length && o.push(r.substring(a)),
  4017. (function (e) {
  4018. for (var t = '', n = 0, r = e || new Date(); n < o.length; n++) t += 'string' == typeof o[n] ? o[n] : o[n](r)
  4019. return t
  4020. })(new Date(t)))
  4021. : t),
  4022. e.replace(/{docsify-updated}/g, t)
  4023. )
  4024. }
  4025. function Dn(e) {
  4026. function t(e) {
  4027. var t = Boolean(e.__vue__ && e.__vue__._isVue),
  4028. e = Boolean(e._vnode && e._vnode.__v_skip)
  4029. return t || e
  4030. }
  4031. var n = this.config,
  4032. r = b('.markdown-section'),
  4033. i = 'Vue' in window && window.Vue.version && Number(window.Vue.version.charAt(0))
  4034. if (((e = e || '<h1>404 - Not found</h1>'), 'Vue' in window))
  4035. for (var o = 0, a = k('.markdown-section > *').filter(t); o < a.length; o += 1) {
  4036. var s = a[o]
  4037. 2 === i ? s.__vue__.$destroy() : 3 === i && s.__vue_app__.unmount()
  4038. }
  4039. if (
  4040. (this._renderTo(r, e),
  4041. n.loadSidebar || this._renderSidebar(),
  4042. (n.executeScript || ('Vue' in window && !1 !== n.executeScript)) &&
  4043. (!(e = k('.markdown-section>script').filter(function (e) {
  4044. return !/template/.test(e.type)
  4045. })[0]) ||
  4046. ((e = e.innerText.trim()) && new Function(e)())),
  4047. 'Vue' in window)
  4048. ) {
  4049. var l,
  4050. c,
  4051. u = [],
  4052. p = Object.keys(n.vueComponents || {})
  4053. 2 === i &&
  4054. p.length &&
  4055. p.forEach(function (e) {
  4056. window.Vue.options.components[e] || window.Vue.component(e, n.vueComponents[e])
  4057. }),
  4058. !Cn && n.vueGlobalOptions && 'function' == typeof n.vueGlobalOptions.data && (Cn = n.vueGlobalOptions.data()),
  4059. u.push.apply(
  4060. u,
  4061. Object.keys(n.vueMounts || {})
  4062. .map(function (e) {
  4063. return [b(r, e), n.vueMounts[e]]
  4064. })
  4065. .filter(function (e) {
  4066. var t = e[0]
  4067. e[1]
  4068. return t
  4069. })
  4070. ),
  4071. (n.vueGlobalOptions || p.length) &&
  4072. ((l = /{{2}[^{}]*}{2}/),
  4073. (c = /<[^>/]+\s([@:]|v-)[\w-:.[\]]+[=>\s]/),
  4074. u.push.apply(
  4075. u,
  4076. k('.markdown-section > *')
  4077. .filter(function (n) {
  4078. return !u.some(function (e) {
  4079. var t = e[0]
  4080. e[1]
  4081. return t === n
  4082. })
  4083. })
  4084. .filter(function (e) {
  4085. return e.tagName.toLowerCase() in (n.vueComponents || {}) || e.querySelector(p.join(',') || null) || l.test(e.outerHTML) || c.test(e.outerHTML)
  4086. })
  4087. .map(function (e) {
  4088. var t = y({}, n.vueGlobalOptions || {})
  4089. return (
  4090. Cn &&
  4091. (t.data = function () {
  4092. return Cn
  4093. }),
  4094. [e, t]
  4095. )
  4096. })
  4097. ))
  4098. for (var h = 0, d = u; h < d.length; h += 1) {
  4099. var f,
  4100. g = d[h],
  4101. m = g[0],
  4102. v = g[1],
  4103. g = 'data-isvue'
  4104. m.matches('pre, script') ||
  4105. t(m) ||
  4106. m.querySelector('[' + g + ']') ||
  4107. (m.setAttribute(g, ''),
  4108. 2 === i
  4109. ? ((v.el = void 0), new window.Vue(v).$mount(m))
  4110. : 3 === i &&
  4111. ((f = window.Vue.createApp(v)),
  4112. p.forEach(function (e) {
  4113. var t = n.vueComponents[e]
  4114. f.component(e, t)
  4115. }),
  4116. f.mount(m)))
  4117. }
  4118. }
  4119. }
  4120. function Pn(t, n, r, i, o, e) {
  4121. ;(t = e ? t : t.replace(/\/$/, '')),
  4122. (t = F(t)) &&
  4123. ce(o.router.getFile(t + r) + n, !1, o.config.requestHeaders).then(i, function (e) {
  4124. return Pn(t, n, r, i, o)
  4125. })
  4126. }
  4127. var In = Object.freeze({
  4128. __proto__: null,
  4129. cached: s,
  4130. hyphenate: o,
  4131. hasOwn: l,
  4132. merge: y,
  4133. isPrimitive: c,
  4134. noop: u,
  4135. isFn: r,
  4136. isExternal: p,
  4137. inBrowser: !0,
  4138. isMobile: h,
  4139. supportsPushState: i,
  4140. parseQuery: E,
  4141. stringifyQuery: R,
  4142. isAbsolutePath: O,
  4143. removeParams: $,
  4144. getParentPath: F,
  4145. cleanPath: C,
  4146. resolvePath: L,
  4147. getPath: N,
  4148. replaceSlug: M,
  4149. endsWith: D,
  4150. })
  4151. var jn,
  4152. Hn,
  4153. qn = (function (e) {
  4154. function t() {
  4155. e.call(this),
  4156. (this.config = we(this)),
  4157. this.initLifecycle(),
  4158. this.initPlugin(),
  4159. this.callHook('init'),
  4160. this.initRouter(),
  4161. this.initRender(),
  4162. this.initEvent(),
  4163. this.initFetch(),
  4164. this.callHook('mounted')
  4165. }
  4166. return (
  4167. e && (t.__proto__ = e),
  4168. (((t.prototype = Object.create(e && e.prototype)).constructor = t).prototype.initPlugin = function () {
  4169. var t = this
  4170. ;[].concat(this.config.plugins).forEach(function (e) {
  4171. return r(e) && e(t._lifecycle, t)
  4172. })
  4173. }),
  4174. t
  4175. )
  4176. })(
  4177. ((Hn = Object),
  4178. (function (e) {
  4179. function t() {
  4180. e.apply(this, arguments)
  4181. }
  4182. return (
  4183. e && (t.__proto__ = e),
  4184. (((t.prototype = Object.create(e && e.prototype)).constructor = t).prototype._loadSideAndNav = function (e, t, n, r) {
  4185. var i = this
  4186. return function () {
  4187. if (!n) return r()
  4188. Pn(
  4189. e,
  4190. t,
  4191. n,
  4192. function (e) {
  4193. i._renderSidebar(e), r()
  4194. },
  4195. i,
  4196. !0
  4197. )
  4198. }
  4199. }),
  4200. (t.prototype._fetch = function (n) {
  4201. var r = this
  4202. void 0 === n && (n = u)
  4203. var i,
  4204. e,
  4205. t,
  4206. o,
  4207. a,
  4208. s = this.route.query,
  4209. l = this.route.path
  4210. p(l)
  4211. ? (history.replaceState(null, '', '#'), this.router.normalize())
  4212. : ((i = R(s, ['id'])),
  4213. (t = (e = this.config).loadNavbar),
  4214. (s = e.requestHeaders),
  4215. (o = e.loadSidebar),
  4216. (a = this.router.getFile(l)),
  4217. (s = Un(a + i, 0, s)),
  4218. (this.isRemoteUrl = p(a)),
  4219. (this.isHTML = /\.html$/g.test(a)),
  4220. s.then(
  4221. function (e, t) {
  4222. return r._renderMain(e, t, r._loadSideAndNav(l, i, o, n))
  4223. },
  4224. function (e) {
  4225. r._fetchFallbackPage(l, i, n) || r._fetch404(a, i, n)
  4226. }
  4227. ),
  4228. t &&
  4229. Pn(
  4230. l,
  4231. i,
  4232. t,
  4233. function (e) {
  4234. return r._renderNav(e)
  4235. },
  4236. this,
  4237. !0
  4238. ))
  4239. }),
  4240. (t.prototype._fetchCover = function () {
  4241. var t = this,
  4242. e = this.config,
  4243. n = e.coverpage,
  4244. r = e.requestHeaders,
  4245. i = this.route.query,
  4246. o = F(this.route.path)
  4247. if (n) {
  4248. var a = null,
  4249. e = this.route.path
  4250. 'string' == typeof n ? '/' === e && (a = n) : (a = Array.isArray(n) ? -1 < n.indexOf(e) && '_coverpage' : !0 === (e = n[e]) ? '_coverpage' : e)
  4251. var s = Boolean(a) && this.config.onlyCover
  4252. return (
  4253. a
  4254. ? ((a = this.router.getFile(o + a)),
  4255. (this.coverIsHTML = /\.html$/g.test(a)),
  4256. ce(a + R(i, ['id']), !1, r).then(function (e) {
  4257. return t._renderCover(e, s)
  4258. }))
  4259. : this._renderCover(null, s),
  4260. s
  4261. )
  4262. }
  4263. }),
  4264. (t.prototype.$fetch = function (e, t) {
  4265. var n = this
  4266. void 0 === e && (e = u), void 0 === t && (t = this.$resetEvents.bind(this))
  4267. function r() {
  4268. n.callHook('doneEach'), e()
  4269. }
  4270. this._fetchCover()
  4271. ? r()
  4272. : this._fetch(function () {
  4273. t(), r()
  4274. })
  4275. }),
  4276. (t.prototype._fetchFallbackPage = function (n, r, i) {
  4277. var o = this
  4278. void 0 === i && (i = u)
  4279. var e = this.config,
  4280. t = e.requestHeaders,
  4281. a = e.fallbackLanguages,
  4282. s = e.loadSidebar
  4283. if (!a) return !1
  4284. e = n.split('/')[1]
  4285. if (-1 === a.indexOf(e)) return !1
  4286. e = this.router.getFile(n.replace(new RegExp('^/' + e), ''))
  4287. return (
  4288. Un(e + r, 0, t).then(
  4289. function (e, t) {
  4290. return o._renderMain(e, t, o._loadSideAndNav(n, r, s, i))
  4291. },
  4292. function () {
  4293. return o._fetch404(n, r, i)
  4294. }
  4295. ),
  4296. !0
  4297. )
  4298. }),
  4299. (t.prototype._fetch404 = function (e, t, n) {
  4300. var r = this
  4301. void 0 === n && (n = u)
  4302. var i = this.config,
  4303. o = i.loadSidebar,
  4304. a = i.requestHeaders,
  4305. i = i.notFoundPage,
  4306. s = this._loadSideAndNav(e, t, o, n)
  4307. if (i) {
  4308. e = (function (t, e) {
  4309. var n,
  4310. r = e.notFoundPage,
  4311. i = '_404' + (e.ext || '.md')
  4312. switch (typeof r) {
  4313. case 'boolean':
  4314. n = i
  4315. break
  4316. case 'string':
  4317. n = r
  4318. break
  4319. case 'object':
  4320. n =
  4321. ((e = Object.keys(r)
  4322. .sort(function (e, t) {
  4323. return t.length - e.length
  4324. })
  4325. .filter(function (e) {
  4326. return t.match(new RegExp('^' + e))
  4327. })[0]) &&
  4328. r[e]) ||
  4329. i
  4330. }
  4331. return n
  4332. })(e, this.config)
  4333. return (
  4334. Un(this.router.getFile(e), 0, a).then(
  4335. function (e, t) {
  4336. return r._renderMain(e, t, s)
  4337. },
  4338. function () {
  4339. return r._renderMain(null, {}, s)
  4340. }
  4341. ),
  4342. !0
  4343. )
  4344. }
  4345. return this._renderMain(null, {}, s), !1
  4346. }),
  4347. (t.prototype.initFetch = function () {
  4348. var e,
  4349. t = this,
  4350. n = this.config.loadSidebar
  4351. this.rendered
  4352. ? ((e = de(this.router, '.sidebar-nav', !0, !0)),
  4353. n && e && (e.parentNode.innerHTML += window.__SUB_SIDEBAR__),
  4354. this._bindEventOnRendered(e),
  4355. this.$resetEvents(),
  4356. this.callHook('doneEach'),
  4357. this.callHook('ready'))
  4358. : this.$fetch(function (e) {
  4359. return t.callHook('ready')
  4360. })
  4361. }),
  4362. t
  4363. )
  4364. })(
  4365. (function (e) {
  4366. function t() {
  4367. e.apply(this, arguments)
  4368. }
  4369. return (
  4370. e && (t.__proto__ = e),
  4371. (((t.prototype = Object.create(e && e.prototype)).constructor = t).prototype.$resetEvents = function (e) {
  4372. var t = this,
  4373. n = this.config.auto2top
  4374. 'history' !== e &&
  4375. (t.route.query.id && Oe(t.route.path, t.route.query.id), 'navigate' === e && n && (void 0 === (n = n) && (n = 0), ($e.scrollTop = !0 === n ? 0 : Number(n)))),
  4376. this.config.loadNavbar && de(this.router, 'nav')
  4377. }),
  4378. (t.prototype.initEvent = function () {
  4379. function t(e) {
  4380. return g.classList.toggle('close')
  4381. }
  4382. var e
  4383. ;(e = 'button.sidebar-toggle'),
  4384. this.router,
  4385. null != (e = d(e)) &&
  4386. (x(e, 'click', function (e) {
  4387. e.stopPropagation(), t()
  4388. }),
  4389. h &&
  4390. x(g, 'click', function (e) {
  4391. return g.classList.contains('close') && t()
  4392. })),
  4393. (e = '.sidebar'),
  4394. this.router,
  4395. null != (e = d(e)) &&
  4396. x(e, 'click', function (e) {
  4397. e = e.target
  4398. 'A' === e.nodeName && e.nextSibling && e.nextSibling.classList && e.nextSibling.classList.contains('app-sub-sidebar') && S(e.parentNode, 'collapse')
  4399. }),
  4400. this.config.coverpage ? h || x('scroll', he) : g.classList.add('sticky')
  4401. }),
  4402. t
  4403. )
  4404. })(
  4405. (function (e) {
  4406. function t() {
  4407. e.apply(this, arguments)
  4408. }
  4409. return (
  4410. e && (t.__proto__ = e),
  4411. (((t.prototype = Object.create(e && e.prototype)).constructor = t).prototype._renderTo = function (e, t, n) {
  4412. e = d(e)
  4413. e && (e[n ? 'outerHTML' : 'innerHTML'] = t)
  4414. }),
  4415. (t.prototype._renderSidebar = function (e) {
  4416. var t = this.config,
  4417. n = t.maxLevel,
  4418. r = t.subMaxLevel,
  4419. i = t.loadSidebar
  4420. if (t.hideSidebar)
  4421. return (
  4422. [document.querySelector('aside.sidebar'), document.querySelector('button.sidebar-toggle')].forEach(function (e) {
  4423. return e.parentNode.removeChild(e)
  4424. }),
  4425. (document.querySelector('section.content').style.right = 'unset'),
  4426. (document.querySelector('section.content').style.left = 'unset'),
  4427. (document.querySelector('section.content').style.position = 'relative'),
  4428. (document.querySelector('section.content').style.width = '100%'),
  4429. null
  4430. )
  4431. this._renderTo('.sidebar-nav', this.compiler.sidebar(e, n))
  4432. n = de(this.router, '.sidebar-nav', !0, !0)
  4433. i && n ? (n.parentNode.innerHTML += this.compiler.subSidebar(r) || '') : this.compiler.subSidebar(), this._bindEventOnRendered(n)
  4434. }),
  4435. (t.prototype._bindEventOnRendered = function (e) {
  4436. var t,
  4437. n = this.config.autoHeader
  4438. !(function (e) {
  4439. var t = b('.cover.show')
  4440. Te = t ? t.offsetHeight : 0
  4441. var t = d('.sidebar'),
  4442. n = []
  4443. null != t && (n = k(t, 'li'))
  4444. for (var r, i = 0, o = n.length; i < o; i += 1) {
  4445. var a,
  4446. s,
  4447. l = n[i],
  4448. c = l.querySelector('a')
  4449. c && ('/' !== (a = c.getAttribute('href')) && ((c = (s = e.parse(a)).query.id), (s = s.path), c && (a = Re(s, c))), a && (xe[decodeURIComponent(a)] = l))
  4450. }
  4451. h ||
  4452. ((r = $(e.getCurrentPath())),
  4453. _('scroll', function () {
  4454. return Ee(r)
  4455. }),
  4456. x('scroll', function () {
  4457. return Ee(r)
  4458. }),
  4459. x(t, 'mouseover', function () {
  4460. _e = !0
  4461. }),
  4462. x(t, 'mouseleave', function () {
  4463. _e = !1
  4464. }))
  4465. })(this.router),
  4466. n && e && (n = (t = d('#main')).children[0]) && 'H1' !== n.tagName && w(t, v('div', this.compiler.header(e.innerText, 1)).children[0])
  4467. }),
  4468. (t.prototype._renderNav = function (e) {
  4469. e && this._renderTo('nav', this.compiler.compile(e)), this.config.loadNavbar && de(this.router, 'nav')
  4470. }),
  4471. (t.prototype._renderMain = function (r, i, o) {
  4472. var a = this
  4473. if ((void 0 === i && (i = {}), !r)) return Dn.call(this, r)
  4474. this.callHook('beforeEach', r, function (e) {
  4475. function t() {
  4476. i.updatedAt && (n = Mn(n, i.updatedAt, a.config.formatUpdated)),
  4477. a.callHook('afterEach', n, function (e) {
  4478. return Dn.call(a, e)
  4479. })
  4480. }
  4481. var n
  4482. a.isHTML
  4483. ? ((n = a.result = r), t(), o())
  4484. : Nn({ compiler: a.compiler, raw: e }, function (e) {
  4485. ;(n = a.compiler.compile(e)), (n = a.isRemoteUrl ? ae.sanitize(n, { ADD_TAGS: ['script'] }) : n), t(), o()
  4486. })
  4487. })
  4488. }),
  4489. (t.prototype._renderCover = function (e, t) {
  4490. var n,
  4491. r = d('.cover')
  4492. S(d('main'), t ? 'add' : 'remove', 'hidden'),
  4493. e
  4494. ? (S(r, 'add', 'show'),
  4495. (t = (n = this.coverIsHTML ? e : this.compiler.cover(e)).trim().match('<p><img.*?data-origin="(.*?)"[^a]+alt="(.*?)">([^<]*?)</p>$')) &&
  4496. ('color' === t[2]
  4497. ? (r.style.background = t[1] + (t[3] || ''))
  4498. : ((e = t[1]),
  4499. S(r, 'add', 'has-mask'),
  4500. O(t[1]) || (e = N(this.router.getBasePath(), t[1])),
  4501. (r.style.backgroundImage = 'url(' + e + ')'),
  4502. (r.style.backgroundSize = 'cover'),
  4503. (r.style.backgroundPosition = 'center center')),
  4504. (n = n.replace(t[0], ''))),
  4505. this._renderTo('.cover-main', n),
  4506. he())
  4507. : S(r, 'remove', 'show')
  4508. }),
  4509. (t.prototype._updateRender = function () {
  4510. var e, t, n, r
  4511. ;(e = this),
  4512. (t = d('.app-name-link')),
  4513. (n = e.config.nameLink),
  4514. (r = e.route.path),
  4515. t &&
  4516. (c(e.config.nameLink)
  4517. ? t.setAttribute('href', n)
  4518. : 'object' == typeof n &&
  4519. ((e = Object.keys(n).filter(function (e) {
  4520. return -1 < r.indexOf(e)
  4521. })[0]),
  4522. t.setAttribute('href', n[e])))
  4523. }),
  4524. (t.prototype.initRender = function () {
  4525. var e = this.config
  4526. ;(this.compiler = new On(e, this.router)), (window.__current_docsify_compiler__ = this.compiler)
  4527. var t,
  4528. n,
  4529. r,
  4530. i,
  4531. o,
  4532. a = e.el || '#app',
  4533. s = b('nav') || v('nav'),
  4534. l = b(a),
  4535. c = '',
  4536. u = g
  4537. l
  4538. ? (e.repo &&
  4539. (c +=
  4540. ((i = e.repo),
  4541. (a = e.cornerExternalLinkTarge),
  4542. i
  4543. ? (/\/\//.test(i) || (i = 'https://github.com/' + i),
  4544. '<a href="' +
  4545. (i = i.replace(/^git\+/, '')) +
  4546. '" target="' +
  4547. (a = a || '_blank') +
  4548. '" class="github-corner" aria-label="View source on Github"><svg viewBox="0 0 250 250" aria-hidden="true"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a>')
  4549. : '')),
  4550. e.coverpage &&
  4551. (c +=
  4552. ((r = ', 100%, 85%'),
  4553. '<section class="cover show" style="background: ' +
  4554. ('linear-gradient(to left bottom, hsl(' + Math.floor(255 * Math.random()) + r + ') 0%,hsl(' + Math.floor(255 * Math.random()) + r + ') 100%)') +
  4555. '"><div class="mask"></div><div class="cover-main">\x3c!--cover--\x3e</div></section>')),
  4556. e.logo &&
  4557. ((r = /^data:image/.test(e.logo)),
  4558. (t = /(?:http[s]?:)?\/\//.test(e.logo)),
  4559. (n = /^\./.test(e.logo)),
  4560. r || t || n || (e.logo = N(this.router.getBasePath(), e.logo))),
  4561. (c +=
  4562. ((n = (t = e).name ? t.name : ''),
  4563. '<main>' +
  4564. ('<button class="sidebar-toggle" aria-label="Menu"><div class="sidebar-toggle-button"><span></span><span></span><span></span></div></button><aside class="sidebar">' +
  4565. (t.name
  4566. ? '<h1 class="app-name"><a class="app-name-link" data-nosearch>' + (t.logo ? '<img alt="' + n + '" src=' + t.logo + '>' : n) + '</a></h1>'
  4567. : '') +
  4568. '<div class="sidebar-nav">\x3c!--sidebar--\x3e</div></aside>') +
  4569. '<section class="content"><article class="markdown-section" id="main">\x3c!--main--\x3e</article></section></main>')),
  4570. this._renderTo(l, c, !0))
  4571. : (this.rendered = !0),
  4572. e.mergeNavbar && h ? (u = b('.sidebar')) : (s.classList.add('app-nav'), e.repo || s.classList.add('no-badge')),
  4573. e.loadNavbar && w(u, s),
  4574. e.themeColor &&
  4575. (f.head.appendChild(v('div', '<style>:root{--theme-color: ' + e.themeColor + ';}</style>').firstElementChild),
  4576. (o = e.themeColor),
  4577. (window.CSS && window.CSS.supports && window.CSS.supports('(--v:red)')) ||
  4578. ((e = k('style:not(.inserted),link')),
  4579. [].forEach.call(e, function (e) {
  4580. if ('STYLE' === e.nodeName) ue(e, o)
  4581. else if ('LINK' === e.nodeName) {
  4582. e = e.getAttribute('href')
  4583. if (!/\.css$/.test(e)) return
  4584. ce(e).then(function (e) {
  4585. e = v('style', e)
  4586. m.appendChild(e), ue(e, o)
  4587. })
  4588. }
  4589. }))),
  4590. this._updateRender(),
  4591. S(g, 'ready')
  4592. }),
  4593. t
  4594. )
  4595. })(
  4596. (function (n) {
  4597. function e() {
  4598. for (var e = [], t = arguments.length; t--; ) e[t] = arguments[t]
  4599. n.apply(this, e), (this.route = {})
  4600. }
  4601. return (
  4602. n && (e.__proto__ = n),
  4603. (((e.prototype = Object.create(n && n.prototype)).constructor = e).prototype.updateRender = function () {
  4604. this.router.normalize(), (this.route = this.router.parse()), g.setAttribute('data-page', this.route.file)
  4605. }),
  4606. (e.prototype.initRouter = function () {
  4607. var t = this,
  4608. e = this.config,
  4609. e = new ('history' === (e.routerMode || 'hash') && i ? q : H)(e)
  4610. ;(this.router = e),
  4611. this.updateRender(),
  4612. (U = this.route),
  4613. e.onchange(function (e) {
  4614. t.updateRender(), t._updateRender(), U.path !== t.route.path ? (t.$fetch(u, t.$resetEvents.bind(t, e.source)), (U = t.route)) : t.$resetEvents(e.source)
  4615. })
  4616. }),
  4617. e
  4618. )
  4619. })(
  4620. (function (e) {
  4621. function t() {
  4622. e.apply(this, arguments)
  4623. }
  4624. return (
  4625. e && (t.__proto__ = e),
  4626. (((t.prototype = Object.create(e && e.prototype)).constructor = t).prototype.initLifecycle = function () {
  4627. var n = this
  4628. ;(this._hooks = {}),
  4629. (this._lifecycle = {}),
  4630. ['init', 'mounted', 'beforeEach', 'afterEach', 'doneEach', 'ready'].forEach(function (e) {
  4631. var t = (n._hooks[e] = [])
  4632. n._lifecycle[e] = function (e) {
  4633. return t.push(e)
  4634. }
  4635. })
  4636. }),
  4637. (t.prototype.callHook = function (e, n, r) {
  4638. void 0 === r && (r = u)
  4639. var i = this._hooks[e],
  4640. o = function (t) {
  4641. var e = i[t]
  4642. t >= i.length
  4643. ? r(n)
  4644. : 'function' == typeof e
  4645. ? 2 === e.length
  4646. ? e(n, function (e) {
  4647. ;(n = e), o(t + 1)
  4648. })
  4649. : ((e = e(n)), (n = void 0 === e ? n : e), o(t + 1))
  4650. : o(t + 1)
  4651. }
  4652. o(0)
  4653. }),
  4654. t
  4655. )
  4656. })(Hn)
  4657. )
  4658. )
  4659. )
  4660. ))
  4661. )
  4662. function Un(e, t, n) {
  4663. return jn && jn.abort && jn.abort(), (jn = ce(e, !0, n))
  4664. }
  4665. ;(window.Docsify = { util: In, dom: t, get: ce, slugify: xn, version: '4.12.2' }),
  4666. (window.DocsifyCompiler = On),
  4667. (window.marked = gn),
  4668. (window.Prism = En),
  4669. e(function (e) {
  4670. return new qn()
  4671. })
  4672. })()