3302.js.map 307 KB

1
  1. {"version":3,"file":"3302.js","mappings":"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CXC,MAAO,OAAS8D,EAASpB,MAAM,KAAKE,KAAK,KAAO,QAElD,CAEE5C,MAAO,6BAqBjB,CAEED,UAAW,SACXC,MAAO,kBAET,CACEA,MAAO,OAvHW,wFAuHc0C,MAAM,KAAKE,KAAK,KAAO,iBACvDvC,aAAa,EACbZ,SAAU,CACR,CACEM,UAAW,WACXC,MAAO,SAIb,CACED,UAAW,WACXkB,SAAU,CACR,CAAEjB,MAAO,oBA/HD,26BA+H+B0C,MAAM,KAAKE,KAAK,KAAO,YAC9D,CACE5C,MAAO,OACPO,UAAW,S,SCNvBzB,EAAOC,QA5IP,SAAaC,GACX,MAmGMmF,EAAmB,CACvBnC,MAAO,CACL,6CACA,MACAhD,EAAKyC,UAEPM,MAAO,CACL,EAAG,UACH,EAAG,gBAIP,MAAO,CACL9C,KAAM,gBACNE,SAAU,CACRE,QA3Ba,CACf,QACA,MACA,KACA,KACA,SACA,OACA,QACA,SACA,YAmBEE,SAnHc,CAChB,MACA,OACA,UACA,OACA,OACA,OACA,aACA,YACA,kBACA,OACA,YACA,QACA,OACA,SACA,MACA,UACA,QACA,QACA,UACA,WACA,KACA,KACA,cACA,MACA,cACA,aACA,QACA,SACA,UACA,WACA,SACA,cACA,MACA,QACA,MACA,MACA,MACA,QACA,YACA,aACA,WACA,SACA,QACA,SACA,MACA,SACA,UACA,UACA,SACA,UACA,UACA,aACA,QACA,UACA,WACA,WACA,WACA,SACA,OACA,MACA,aACA,WACA,eACA,SACA,OACA,OACA,MACA,UACA,cACA,QACA,YACA,aACA,QACA,QACA,SAyCEC,KAtCU,CACZ,SACA,QACA,QACA,QACA,SACA,WAkCAgC,QAAS,KACT/B,SAAU,CACRT,EAAKU,oBACLV,EAAKgC,qBACLhC,EAAKW,kBACLX,EAAK8B,iBACL9B,EAAKY,cACL,CACEG,UAAW,OACXC,MAAO,IACPE,IAAK,KAEPiE,EACA,CACE7C,cAAe,gCACfpB,IAAK,W,SC6QbpB,EAAOC,QAlZP,SAAcC,GACZ,MAAMyB,EAAQzB,EAAKyB,MACb2D,EAAiB,qFAEjBC,EAAgB5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CA,SACA,WACA,eACA,aACA,oBA0BF,MAAO,CACLxG,KAAM,OACNC,QAAS,CAAE,MACXC,SAAU,CACRC,SAAUJ,EAAKyC,SAAW,KAC1BjC,KA7BU,CACZ,KACA,MACA,MACA,MACA,OACA,QACA,KACA,MACA,MACA,MACA,OACA,QACA,MACA,MACA,MACA,OACA,OACA,MACA,SACA,SACA,SACA,OAQEH,QA9Ja,CACf,WACA,KACA,QACA,QACA,SACA,MACA,QACA,QACA,WACA,QACA,KACA,MACA,OACA,OACA,SACA,QACA,QACA,KACA,MACA,KACA,OACA,KACA,MACA,OACA,QACA,QACA,MACA,OACA,MACA,WACA,OACA,MACA,MACA,SACA,OACA,OACA,SACA,SACA,QACA,QACA,OACA,MACA,OACA,SACA,SACA,UACA,MACA,UACA,QACA,QACA,SA4GEC,QA1Ga,CACf,OACA,QACA,OACA,OACA,KACA,OAqGEC,SAAUkG,GAEZjE,QAAS,KACT/B,SAAU,CACRT,EAAKU,oBACLV,EAAK8C,QAAQ,OAAQ,OAAQ,CAAErC,SAAU,CAAE,UAC3CT,EAAK2B,QAAQ3B,EAAKW,kBAAmB,CACnCK,MAAO,MACPwB,QAAS,OAEX,CACEzB,UAAW,SACXkB,SAAU,CACR,CAAEjB,MAAO,4BACT,CAAEA,MAAO,qCAGb,CACED,UAAW,SACXC,MAAO,2BAET,CACED,UAAW,SACXkB,SAAU,CACR,CAAEjB,MAAO,gBAAkBwF,GAC3B,CAAExF,MAAO,iBAAmBwF,GAC5B,CAAExF,MAAO,uBAAyBwF,GAClC,CAAExF,MAAO,kDACEwF,IAEbjF,UAAW,GAEb,CACEP,MAAO,CACL,KACA,MACAhB,EAAKkG,qBAEPnF,UAAW,CACT,EAAG,UACH,EAAG,mBAGP,CACEA,UAAW,OACXC,MAAO,SACPE,IAAK,MACLT,SAAU,CACR,CACEM,UAAW,SACXC,MAAO,IACPE,IAAK,OAIX,CACEF,MAAO,CACL,MACA,MACA,cACAhB,EAAKkG,qBAEPnF,UAAW,CACT,EAAG,UACH,EAAG,UACH,EAAG,aAIP,CACEC,MAAO,CACL,MACA,MACAhB,EAAKkG,oBACL,MACA,MAEFnF,UAAW,CACT,EAAG,UACH,EAAG,WACH,EAAG,YAGP,CACEC,MAAO,CACL,OACA,MACAhB,EAAKkG,qBAEPnF,UAAW,CACT,EAAG,UACH,EAAG,gBAGP,CACEC,MAAO,CACL,uCACA,MACAhB,EAAKkG,qBAEPnF,UAAW,CACT,EAAG,UACH,EAAG,gBAGP,CACEC,MAAOhB,EAAKyC,SAAW,KACvBtC,SAAU,CACRE,QAAS,OACTE,SAAUkG,IAGd,CACE1F,UAAW,cACXC,MAAO,MAETuF,M,SCkQNzG,EAAOC,QApiBP,SAAaC,GACX,MAAMyB,EAAQzB,EAAKyB,MA6dnB,MAAO,CACLxB,KAAM,MACN4B,kBAAkB,EAClB1B,SAAU,CACRG,QAnBa,CACf,OACA,UACA,QACA,cACA,cACA,WACA,MACA,SACA,SACA,YACA,SACA,YAQED,QAheiB,CACnB,KACA,KACA,OACA,OACA,MACA,QACA,QACA,QACA,QACA,SACA,KACA,OACA,QACA,SACA,UACA,WACA,YACA,aACA,SACA,QACA,YACA,UACA,KACA,OACA,SACA,QACA,OACA,WACA,WACA,SACA,OACA,KACA,SACA,WACA,QACA,OACA,QACA,QACA,SACA,UACA,OACA,OACA,WACA,QACA,UACA,SACA,UACA,SACA,MACA,OACA,MACA,WACA,SACA,SACA,UACA,SACA,SACA,SACA,MACA,OACA,WACA,OACA,QACA,SACA,UACA,QACA,SACA,MACA,UACA,MACA,MACA,QACA,KACA,UACA,QACA,SACA,SACA,WACA,WACA,OACA,UACA,OACA,QACA,SACA,QACA,SACA,OACA,KACA,MACA,OACA,UACA,SACA,UACA,MACA,OACA,KACA,KACA,QACA,UACA,aACA,QACA,WACA,SACA,MACA,QACA,SACA,SACA,WACA,OACA,UAoXAI,SAAU,CACR,CAEEM,UAAW,UACXC,MAAO,0CAET,CAEED,UAAW,WACXC,MAAO,+BAET,CACEA,MAAO,CACL,OACA,oBACA,YACA,aAEFD,UAAW,CACT,EAAG,UACH,EAAG,WAGP,CACEC,MAAO,CACL,eACA,MACA,2BAEFD,UAAW,CACT,EAAG,WACH,EAAG,mBAGP,CACEA,UAAW,WACXC,MAAO,IAAMS,EAAMkB,OAxHvB,SACA,WACA,SACA,UACA,WACA,UACA,UACA,KACA,OACA,MACA,OACA,SACA,OACA,KACA,QACA,QACA,SACA,QACA,OACA,SACA,MACA,QACA,UACA,QACA,OACA,WACA,UACA,QACA,MACA,UACA,QACA,WACA,QACA,UACA,WACA,QACA,QACA,UACA,OACA,MACA,SACA,SACA,UACA,WACA,UACA,UACA,SACA,UACA,UACA,QACA,UACA,OACA,KACA,OACA,UACA,QACA,SACA,SACA,QACA,WA+DE,CAEE5B,UAAW,iBACXC,MAAO,2BAET,CAIED,UAAW,OACXC,MAAOS,EAAMkB,OA/ZjB,MACA,OACA,OACA,QACA,QACA,OACA,QACA,QACA,OACA,UACA,UACA,OACA,MACA,UACA,OACA,OACA,MACA,OACA,SACA,OACA,QACA,SACA,UACA,SACA,WACA,WACA,MACA,OACA,MACA,SACA,KACA,SACA,WACA,SACA,UACA,UACA,QACA,OACA,UACA,WACA,WACA,MACA,SACA,QACA,UACA,UACA,QACA,QACA,SACA,SACA,SACA,SACA,UACA,OACA,MACA,UACA,MACA,QACA,OACA,QACA,WACA,UACA,QACA,WACA,SACA,MACA,OACA,QACA,MACA,UACA,SACA,OACA,UACA,QACA,WACA,SACA,OACA,YACA,WACA,UACA,QACA,OACA,UACA,WACA,WACA,QACA,SACA,QACA,QACA,WACA,UACA,SACA,OACA,OACA,QACA,UACA,QACA,OACA,OACA,SACA,SACA,QACA,YACA,UACA,UACA,SACA,MACA,WACA,OACA,UACA,QACA,SACA,SACA,QACA,SACA,SACA,MACA,QACA,QACA,QACA,MACA,UACA,UACA,WACA,MACA,SACA,OACA,SACA,SACA,UACA,SACA,MACA,QACA,OACA,SACA,SACA,SACA,UACA,MACA,MACA,OACA,MACA,SACA,MACA,QACA,QACA,OACA,IACA,QACA,QACA,SACA,OACA,MACA,OACA,UACA,WACA,MACA,OACA,QACA,MACA,QACA,UACA,OACA,WACA,WACA,UACA,QACA,UACA,WACA,SACA,WACA,WACA,QACA,MACA,OACA,OACA,MACA,QACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,SACA,SACA,SACA,SACA,SACA,UACA,UACA,SACA,QACA,QACA,SACA,OACA,MACA,SACA,OACA,MACA,OACA,WACA,UACA,SACA,OACA,MACA,SACA,SACA,SACA,UACA,SACA,MACA,SACA,SACA,SACA,UACA,QACA,SACA,MACA,OACA,OACA,WACA,OACA,SACA,QACA,YACA,UACA,WACA,OACA,QACA,QACA,UACA,SACA,MACA,MACA,SACA,WACA,WACA,SACA,UACA,SACA,SACA,UACA,UACA,SACA,UACA,WACA,YACA,WACA,YACA,WACA,YACA,WACA,WACA,YACA,YACA,aACA,cACA,aACA,cACA,aACA,cACA,aACA,SACA,UACA,UACA,WACA,QACA,SACA,QACA,SACA,UACA,OACA,MACA,UACA,UACA,WACA,YAyIwC,WAEtC,CACE5B,UAAW,SACXkB,SAAU,CACRjC,EAAK8B,iBACL9B,EAAKW,oBAGTX,EAAK8C,QAAQ,MAAO,KACpB9C,EAAKgC,yB,QCpXXlC,EAAOC,QA1KP,SAAeC,GACb,MAAMyB,EAAQzB,EAAKyB,MAObmE,EAAQ,CACZ7E,UAAW,QACXkB,SAAU,CACR,CAAEjB,MAAO,oBACT,CACEA,MAAO,OACPE,IAAK,QAKL2E,EAAS,CACb9E,UAAW,SACXkB,SAAU,CACR,CACEjB,MAAO,MACPE,IAAK,OAEP,CACEF,MAAO,IACPE,IAAK,IACLsB,QAAS,MACT/B,SAAU,CAAET,EAAK+B,mBAEnB,CACEf,MAAO,UACPE,IAAK,IACLsB,QAAS,MACT/B,SAAU,CACRT,EAAK+B,iBACL6D,IAGJ,CACE7E,UAAW,SACXC,MAAO,YACPE,IAAK,MACLT,SAAU,CAAEmF,GACZrE,UAAW,MAMXmF,EAAO,CACX3F,UAAW,O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CEF,MAAO,gCACPO,UAAW,GAEb,CACEP,MAAO,MACPE,IAAK,aACLK,UAAW,EACXd,SAAU8G,GAEZvH,EAAK8C,QAAQ,KAAM,MACnBpB,OAAO6F,M,SCpEb,MA6CME,EAAO,CACX,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,IACA,IACA,QACA,OACA,UACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,SAGIC,EAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,cAIIC,EAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,SAIIC,EAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,kBAGIC,EAAa,CACjB,gBACA,cACA,aACA,MACA,YACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,4BACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,oBACA,kBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,uBACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,UACA,qBACA,oBACA,gBACA,MACA,YACA,aACA,SACA,YACA,UACA,cACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,YACA,mBACA,iBACA,eACA,aACA,iBACA,eACA,oBACA,0BACA,yBACA,uBACA,wBACA,0BACA,cACA,MACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,cACA,YACA,kBACA,OACA,iBACA,aACA,cACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,gBACA,aACA,aACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,mBACA,oBACA,oBACA,QACA,cACA,eACA,cACA,qBACA,iBACA,WACA,SACA,SACA,OACA,aACA,cACA,QACA,UACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,QACA,WACA,MACA,WACA,eACA,aACA,iBACA,kBACA,uBACA,kBACA,wBACA,uBACA,wBACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,iBACA,0BACA,MACA,YACA,gBACA,mBACA,kBACA,aACA,mBACA,sBACA,sBACA,6BACA,eACA,iBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,WAGAC,UA6HFhI,EAAOC,QAlHP,SAAcC,GACZ,MAAM+H,EAnmBM,CAAC/H,IACN,CACLgI,UAAW,CACTjF,MAAO,OACP/B,MAAO,cAETiH,cAAejI,EAAKgC,qBACpBkG,SAAU,CACRnF,MAAO,SACP/B,MAAO,mDAETmH,kBAAmB,CACjBpH,UAAW,WACXC,MAAO,gBAEToH,wBAAyB,CACvBrF,MAAO,gBACP/B,MAAO,KACPE,IAAK,KACLsB,QAAS,IACT/B,SAAU,CACRT,EAAK8B,iBACL9B,EAAKW,oBAGT0H,gBAAiB,CACftF,MAAO,SACP/B,MAAOhB,EAAKsI,UAALtI,kGASPuB,UAAW,GAEbgH,aAAc,CACZxH,UAAW,OACXC,MAAO,8BA2jBGwH,CAAMxI,GACdyI,EAAoBb,EACpBc,EAAmBf,EAEnBgB,EAAgB,WAGhBC,EAAW,CACf7H,UAAW,WACXC,MAAO,kCACPO,UAAW,GAGb,MAAO,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ACA,SACA,YACA,aACA,mBACA,kBACA,uBACA,aACA,eACA,iBACA,kBACA,cACA,oBACA,sBACA,eACA,YACA,cACA,mBACA,yBACA,oBACA,mBACA,cACA,mBACA,uBACA,4BACA,wBACA,mBACA,kBACA,kBACA,WACA,uBACA,aACA,eACA,iBACA,cACA,UACA,eACA,qBACA,cACA,oBACA,mBACA,gBACA,eACA,cACA,uBACA,mBACA,yBACA,oBACA,kBACA,eACA,oBACA,UACA,cACA,yBACA,oBACA,uBACA,aACA,eACA,kBACA,uBACA,gCACA,YACA,eACA,WACA,eACA,yBACA,oBACA,gBACA,wBACA,YACA,aACA,aACA,UACA,cACA,YACA,iBACA,uBACA,kBACA,gBACA,gBACA,kBACA,gCACA,sCACA,QACA,QACA,SACA,WACA,gBACA,SACA,qBACA,gBACA,mBACA,cACA,gBACA,QACA,kBACA,wBACA,gBACA,cACA,cACA,cACA,eACA,UACA,aACA,mBACA,cACA,YACA,gBACA,WACA,oBACA,cACA,sBACA,+BACA,cACA,eACA,sBACA,eACA,aACA,cACA,aACA,mBACA,WACA,aACA,WACA,cACA,eACA,OACA,cACA,MACA,UACA,aACA,cACA,eACA,gBACA,iBACA,iBACA,uBACA,iBACA,iBACA,SACA,QACA,eACA,iBACA,OACA,WACA,WACA,SACA,gBACA,qBACA,oBACA,iBACA,iBACA,iBACA,gBACA,gBACA,oBACA,iBACA,iBACA,gBACA,iBACA,eACA,kBACA,sBACA,aACA,aACA,kBACA,OACA,QACA,MACA,WACA,iBACA,kBACA,aACA,eACA,WACA,gBACA,WACA,gBACA,oBACA,gBACA,oBACA,mBACA,mBACA,YACA,YACA,sBACA,YACA,iBACA,oBACA,cACA,kBACA,iBACA,QACA,WACA,UACA,YACA,eACA,eACA,cACA,0BACA,6BACA,wBACA,yBACA,eACA,kBACA,YACA,gBACA,sCACA,OACA,gBACA,aACA,YACA,oBACA,eACA,0BACA,YACA,aACA,eACA,wBACA,iBACA,WACA,aACA,qBACA,aACA,eACA,iBACA,gBACA,iBACA,kBACA,gBACA,qBACA,gBACA,mBACA,mBACA,aACA,YACA,aACA,cACA,YACA,iBACA,YACA,eACA,eACA,YACA,YACA,SACA,uBACA,sBACA,mBACA,8BACA,UACA,UACA,eACA,WACA,aACA,8BACA,oBACA,kBACA,UACA,aACA,YACA,eACA,OACA,iBACA,gBACA,iBACA,kBACA,YACA,qBACA,qBACA,4BACA,qBACA,2BACA,iBACA,kBACA,iBACA,uBACA,gBACA,qBACA,2BACA,oBACA,eACA,aACA,mBACA,mBACA,yBACA,kBACA,cACA,cACA,eACA,eACA,qBACA,qBACA,gBACA,kBACA,aACA,uBACA,cACA,YACA,cACA,gBACA,aACA,gBACA,iBACA,cACA,eACA,cACA,yBACA,gBACA,eACA,UACA,gBACA,UACA,eACA,gBACA,eACA,cACA,gBACA,aACA,kBACA,aACA,WACA,mBACA,wBACA,kBACA,sBACA,sBACA,uBACA,kBACA,WACA,eACA,oBACA,oBACA,kBACA,gBACA,MACA,QACA,aACA,gBACA,YACA,YACA,eACA,wBACA,mBACA,cACA,eACA,eACA,kBACA,oBACA,qBACA,gBACA,mBACA,cACA,qBACA,gBACA,yBACA,iBACA,eACA,oBACA,aACA,aACA,uBACA,0BACA,qBACA,mBACA,aACA,oBACA,eACA,aACA,aACA,gBACA,aACA,gBACA,oBACA,qBACA,OACA,cACA,WACA,UACA,WACA,SACA,mBACA,kBACA,mBACA,gBACA,kBACA,eACA,eACA,sBACA,YACA,mBACA,0BACA,sBACA,uBACA,sBACA,cACA,gBACA,aACA,gBACA,aACA,aACA,aACA,cACA,WACA,iBACA,iBACA,UACA,UACA,iBACA,mBACA,oBACA,kBACA,gBACA,mBACA,eACA,uBACA,uBACA,YACA,oBACA,iBACA,oBACA,aACA,0BACA,eACA,6BACA,yBACA,YACA,mBACA,qBACA,eACA,yBACA,0BACA,yBACA,yBACA,iBACA,uBACA,sBACA,cACA,eACA,cACA,gBACA,iBACA,gBACA,iBACA,gBACA,iBACA,gBACA,iBACA,gBACA,iBACA,gBACA,iBACA,oBACA,sBACA,sBACA,sBACA,sBACA,sBACA,sBACA,6BACA,eACA,gBACA,uBACA,yBACA,eACA,uBACA,oBACA,uBACA,wBACA,kBACA,mBACA,mBACA,mBACA,mBACA,eACA,sBACA,wBACA,cACA,mBACA,4BACA,uBACA,uBACA,iBACA,yBACA,2BACA,0BACA,aACA,WACA,YACA,YACA,WACA,gBACA,iBACA,oBACA,oBACA,gBACA,cACA,WACA,UACA,cACA,gBACA,aACA,cACA,YACA,sBACA,mBACA,aACA,UACA,gBACA,gBACA,oBACA,2BACA,cACA,yBACA,qBACA,yBACA,mBACA,gBACA,2BACA,kBACA,sBACA,uBACA,iBACA,iBACA,kBACA,wBACA,8BACA,wBACA,gBACA,mBACA,eACA,cACA,eACA,mBACA,oBACA,kBACA,gBACA,oBACA,sBACA,iBACA,eACA,eACA,aACA,cACA,yBACA,aACA,SACA,SACA,UACA,SACA,OACA,eACA,UACA,gBACA,iBACA,WACA,WACA,mBACA,MACA,qBACA,WACA,eACA,mBACA,qBACA,cACA,uBACA,iBACA,iBACA,eACA,oBACA,cACA,kBACA,aACA,eACA,eACA,aACA,gBACA,oBACA,iBACA,SACA,gBACA,yBACA,qBACA,wBACA,0BACA,wBACA,iBACA,gBACA,cACA,eACA,WACA,cACA,eACA,YACA,uBACA,aACA,wBACA,+BACA,oBACA,uBACA,0BACA,wBACA,4BACA,oBACA,wBACA,oBACA,iBACA,WACA,oBACA,0BACA,mBACA,mBACA,gBACA,cACA,SACA,kBACA,qBACA,SACA,cACA,aACA,oBACA,uBACA,mBACA,YACA,YACA,YACA,uBACA,sBACA,yBACA,uBACA,sBACA,uBACA,uBACA,qBACA,2BACA,mBACA,yBACA,cACA,gBACA,gCACA,4BACA,yBACA,eACA,WACA,aACA,cACA,qBACA,eACA,kBACA,SACA,WACA,QACA,WACA,SACA,YACA,SACA,oBACA,WACA,UACA,YACA,cACA,WACA,aACA,WACA,aACA,WACA,eACA,cACA,gBACA,eACA,SACA,OACA,4BACA,gCACA,2BACA,iCACA,OACA,4BACA,aACA,wBACA,qBACA,mBACA,iBACA,WACA,kBACA,qBACA,eACA,qBACA,uBACA,oBACA,iBACA,iBACA,gBACA,sBACA,gBACA,wBACA,mBACA,0BACA,gCACA,kBACA,wBACA,oBACA,gBACA,kBACA,2BACA,iBACA,eACA,qBACA,cACA,eACA,mBACA,0BACA,eACA,kBACA,mBACA,yBACA,gBACA,qBACA,mBACA,gBACA,0BACA,qBACA,qBACA,sBACA,0BACA,mBACA,aACA,QACA,WACA,iBACA,kBACA,gBACA,mBACA,WACA,qBACA,oBACA,yBACA,oBACA,qBACA,gBACA,iBACA,OACA,mBACA,UACA,SACA,MACA,sBACA,oBACA,qBACA,eACA,SACA,OACA,UACA,kBACA,YACA,YACA,YACA,aACA,cACA,aACA,sBACA,OACA,YACA,cACA,mBACA,oBACA,yBACA,SACA,mBACA,oBACA,SACA,OACA,eACA,gBACA,OACA,qBACA,YACA,WACA,cACA,UACA,UACA,QACA,cACA,iBACA,cACA,MACA,cACA,YACA,kBACA,qBACA,uBACA,YACA,WACA,mBACA,kBACA,oBACA,WACA,eACA,aACA,eACA,YACA,kBACA,qBACA,gBACA,qBACA,oBACA,eACA,SACA,YACA,qBACA,kBACA,mBACA,oBACA,gBACA,aACA,aACA,WACA,WACA,aACA,OACA,WACA,mBACA,oBACA,eACA,MACA,qBACA,mBACA,gBACA,qBACA,gBACA,kBACA,cACA,sBACA,uBACA,sBACA,0BACA,mBACA,kBACA,gBACA,4BACA,wBACA,mBACA,mBACA,yBACA,mBACA,eACA,sBACA,mBACA,WACA,mBACA,+BACA,kBACA,kBACA,0BACA,yBACA,kBACA,wBACA,mBACA,uBACA,kBACA,yCACA,yBACA,gBACA,kBACA,iBACA,uBACA,8BACA,kBACA,sBACA,wBACA,mBACA,2BACA,gCACA,aACA,iBACA,SACA,eACA,gBACA,oBACA,0BACA,UACA,kBACA,kBACA,gBACA,uBACA,qBACA,wBACA,aACA,0BACA,uBACA,YACA,iBACA,eACA,iBACA,eACA,qBACA,gBACA,cACA,SACA,cACA,oBACA,eACA,cACA,gBACA,oBACA,mBACA,iBACA,eACA,gBACA,gBACA,UACA,mBACA,wBACA,iBACA,0BACA,mBACA,iBACA,eACA,mBACA,qBACA,YACA,oBACA,oBACA,eACA,eACA,qBACA,iBACA,iBACA,oBACA,gBACA,wBACA,eACA,qBACA,oBACA,0BACA,yBACA,yBACA,uBACA,iBACA,mBACA,cACA,kBACA,eACA,kBACA,qBACA,SACA,YACA,kBACA,aACA,YACA,kBACA,eACA,cACA,oBACA,oBACA,YACA,YACA,2BACA,iBACA,gBACA,cACA,mBACA,oBACA,iBACA,eACA,qBACA,2BACA,WACA,aACA,eACA,yBACA,qBACA,iBACA,iBACA,sBACA,UACA,aACA,eACA,uBACA,mBACA,iBACA,eACA,iBACA,kBACA,cACA,kBACA,mBACA,iBACA,gBACA,yBACA,sBACA,WACA,WACA,WACA,aACA,cACA,UACA,OACA,QACA,YACA,iBACA,sBACA,oBACA,UACA,aACA,aACA,qBACA,kBACA,SACA,QACA,OACA,eACA,kBACA,gBACA,WACA,eACA,iBACA,YACA,cACA,gBACA,WACA,oBACA,gBACA,aACA,gBACA,aACA,YACA,aACA,WACA,qBACA,WACA,aACA,mBACA,gBACA,wBACA,OACA,QACA,YACA,aACA,MACA,cACA,WACA,oBACA,WACA,QACA,kBACA,aACA,KACA,SACA,cACA,qBACA,UACA,WACA,YACA,4BACA,sBACA,aACA,0BACA,eACA,kBACA,YACA,cACA,qBACA,SACA,qBACA,YACA,SACA,oBACA,gBACA,kBACA,sBACA,UACA,wBACA,UACA,gBACA,eACA,0BACA,aACA,kBACA,aACA,YACA,UACA,qBACA,mBACA,kBACA,cACA,iBACA,aACA,YACA,cACA,iBACA,iBACA,mBACA,oBACA,wBACA,UACA,iBACA,cACA,eACA,oBACA,gBACA,eACA,0BACA,WACA,uBACA,uBACA,4BACA,cACA,cACA,WACA,YACA,YACA,cACA,eACA,wBACA,gBACA,oBACA,QACA,eACA,SACA,WACA,iBACA,cACA,WACA,eACA,WACA,aACA,mBACA,sBACA,0BACA,WACA,mBACA,iBACA,kBACA,mBACA,iBACA,4BACA,wBACA,SACA,mBACA,cACA,oBACA,mBACA,iBACA,cACA,mBACA,iBACA,mBACA,yBACA,YACA,mBACA,iBACA,YACA,QACA,qBACA,OACA,SACA,eACA,aACA,aACA,gBACA,uBACA,aACA,aACA,UACA,gBACA,SACA,YACA,WACA,UACA,OACA,aACA,OACA,SACA,aACA,WACA,cACA,QACA,UACA,UACA,eACA,WACA,SACA,WACA,eACA,YACA,iBACA,cACA,aACA,kBACA,cACA,YACA,eACA,oBACA,4BACA,4BACA,oBACA,yBACA,iCACA,iCACA,mBACA,wBACA,gBACA,YACA,iBACA,eACA,aACA,SACA,SACA,gBACA,SACA,cACA,UACA,SACA,oBACA,qBACA,kBACA,gCACA,+BACA,yCACA,iCACA,yCACA,mBACA,eACA,iBACA,qBACA,YACA,oBACA,oBACA,YACA,aACA,aACA,mBACA,iBACA,qBACA,yBACA,qBACA,WACA,OACA,cACA,oBACA,qBACA,KACA,cACA,eACA,YACA,WACA,WACA,gBACA,eACA,UACA,kBACA,eACA,wBACA,aACA,kBACA,cACA,mBACA,mBACA,kBACA,aACA,gBACA,qBACA,0BACA,6BACA,kCACA,qBACA,aACA,kBACA,gBACA,cACA,UACA,UACA,iBACA,UACA,eACA,WACA,OACA,UACA,eACA,WACA,WACA,eACA,eACA,cACA,aACA,cACA,WACA,QACA,WACA,iBACA,mBACA,OACA,eACA,YACA,aACA,SACA,cACA,eACA,kBACA,eACA,eACA,gBACA,aACA,SACA,MACA,cACA,aACA,sBACA,SACA,YACA,gBACA,YACA,sBACA,gBACA,qBACA,oBACA,kBACA,0BACA,yBACA,sBACA,kBACA,qBACA,aACA,eACA,gBACA,cACA,oBACA,kBACA,wBACA,cACA,cACA,gBACA,cACA,YACA,iBACA,YACA,eACA,cACA,aACA,aACA,aACA,iBACA,kBACA,MACA,UACA,aACA,UACA,cACA,YACA,eACA,WACA,aACA,aACA,cACA,aACA,YACA,cACA,gBACA,eACA,cACA,iBACA,kBACA,cACA,aACA,eACA,eACA,mBACA,WACA,WACA,WACA,UACA,YACA,QACA,MACA,aACA,iBACA,gBACA,mBACA,oBACA,oBACA,cACA,oBACA,mBACA,eACA,iBACA,MACA,eACA,qBACA,0BACA,oBACA,YACA,gBACA,YACA,SACA,OACA,iBACA,YACA,cACA,kBACA,eACA,eACA,eACA,kBACA,UACA,aACA,WACA,SACA,kBACA,eACA,cACA,OACA,kBACA,YACA,eACA,kBACA,kBACA,mBACA,6BACA,gBACA,iBACA,wBACA,cACA,mBACA,YACA,eACA,cACA,aACA,QACA,aACA,aACA,oBACA,oBACA,aACA,MACA,qBACA,eACA,SACA,iBACA,kBACA,eACA,YACA,iBACA,kBACA,kBACA,iBACA,uBACA,uBACA,gBACA,cACA,mBACA,uBACA,uBACA,4BACA,mBACA,oBACA,uBACA,oBACA,mBACA,kBACA,eACA,uBACA,cACA,kBACA,UACA,UACA,eACA,mBACA,KACA,aACA,WACA,mBACA,QACA,QACA,SACA,cACA,mBACA,YACA,mBACA,mBACA,qBACA,iBACA,QACA,YACA,gBACA,qBACA,SACA,SACA,sBACA,gBACA,aACA,gBACA,SACA,oBACA,aACA,gBACA,cACA,cACA,WACA,cACA,YACA,sBACA,YACA,cACA,WACA,wBACA,mBACA,mBACA,iBACA,iBACA,oBACA,iBACA,kBACA,iBACA,kBACA,qBACA,YACA,gBACA,gBACA,eACA,kBACA,kBACA,iBACA,4BACA,gBACA,qBACA,wBACA,WACA,mBACA,sBACA,iBACA,cACA,mBACA,mBACA,wBACA,mBACA,sBACA,iBACA,uBACA,uBACA,WACA,iBACA,gBACA,iBACA,oBACA,kBACA,MACA,kBACA,qBACA,mBACA,qBACA,0BACA,uBACA,cACA,OACA,UACA,SACA,OACA,SACA,SACA,cACA,kBACA,eACA,SACA,gBACA,gBACA,aACA,iBACA,sBACA,uBACA,yBACA,kBACA,eACA,6BACA,mBACA,yBACA,0BACA,sBACA,yBACA,8BACA,+BACA,yBACA,wBACA,iBACA,8BACA,gCACA,2BACA,8BACA,sBACA,8BACA,gCACA,mBACA,iBACA,uBACA,sBACA,iBACA,sBACA,0BACA,+BACA,2BACA,oBACA,qBACA,iBACA,kBACA,qBACA,6BACA,gBACA,kBACA,oBACA,iBACA,aACA,yBACA,wBACA,qBACA,cACA,iBACA,uBACA,kBACA,wBACA,uBACA,iBACA,4BACA,uBACA,0BACA,kBACA,0BACA,4BACA,mBACA,uBACA,mBACA,gBACA,aACA,eACA,8BACA,oBACA,qBACA,qBACA,qBACA,kBACA,gBACA,yBACA,SACA,YACA,iBACA,sBACA,SACA,aACA,UACA,iBACA,SACA,mBACA,kBACA,sBACA,iBACA,oBACA,eACA,aACA,UACA,cACA,aACA,kBACA,aACA,QACA,eACA,mBACA,aACA,cACA,kBACA,eACA,QACA,gBACA,YACA,YACA,eACA,YACA,eACA,YACA,oBACA,WACA,eACA,gBACA,cACA,uBACA,aACA,UACA,gBACA,MACA,QACA,QACA,YACA,QACA,YACA,aACA,gBACA,aACA,aACA,YACA,kBACA,uBACA,0BACA,SACA,mBACA,qBACA,wBACA,qBACA,iBACA,oBACA,eACA,YACA,YACA,iBACA,eACA,eACA,uBACA,eACA,qBACA,gBACA,oBACA,WACA,iBACA,iBACA,gBACA,yBACA,0BACA,aACA,aACA,MACA,mBACA,oBACA,cACA,sBACA,eACA,sBACA,mBACA,0BACA,2BACA,uBACA,oBACA,kBACA,aACA,yBACA,sBACA,iBACA,UACA,eACA,iBACA,mBACA,cACA,iBACA,YACA,kBACA,gBACA,gBACA,sBACA,gBACA,eACA,qBACA,uBACA,eACA,kBACA,oBACA,uBACA,oBACA,cACA,aACA,kBACA,oBACA,qBACA,gBACA,wBACA,sBACA,8BACA,iBACA,4BACA,yBACA,oBACA,iBACA,qBACA,mBACA,uBACA,2BACA,qBACA,YACA,aACA,UACA,oBACA,mBACA,iBACA,wBACA,qBACA,yBACA,SACA,eACA,cACA,iBACA,kBACA,+BACA,mCACA,gBACA,uBACA,qBACA,wBACA,kBACA,kBACA,UACA,mBACA,aACA,iBACA,wBACA,eACA,cACA,iBACA,SACA,uBACA,eACA,mBACA,aACA,YACA,gBACA,iBACA,UACA,eACA,eACA,qBACA,0BACA,uBACA,aACA,mBACA,gBACA,WACA,gBACA,SACA,cACA,oBACA,yBACA,uBACA,cACA,gBACA,eACA,YACA,kBACA,sBACA,qBACA,gBACA,mBACA,2BACA,oBACA,oBACA,gBACA,mBACA,qBACA,wBACA,iBACA,sBACA,iBACA,sBACA,iBACA,sBACA,eACA,oBACA,oBACA,yBACA,eACA,oBACA,kBACA,uBACA,iBACA,sBACA,gBACA,qBACA,gBACA,qBACA,gBACA,qBACA,UACA,WACA,mBACA,sBACA,mBACA,iBACA,uBACA,UACA,eACA,qBACA,oBACA,0BACA,iBACA,iBACA,mBACA,yBACA,wBACA,cACA,WACA,qBACA,oBACA,mBACA,kBACA,oBACA,oBACA,0BACA,yBACA,uBACA,gBACA,eACA,WACA,iBACA,cACA,uBACA,qBACA,SACA,YACA,aACA,aACA,YACA,cACA,cACA,kBACA,oBACA,cACA,UACA,aACA,eACA,UACA,iBACA,iBACA,mBACA,oBACA,iBACA,UACA,6BACA,0BACA,2BACA,2BACA,sBACA,oBACA,wBACA,UACA,WACA,eACA,iBACA,aACA,YACA,eACA,aACA,mBACA,gBACA,eACA,iBACA,mBACA,eACA,sBACA,gBACA,eACA,iBACA,UACA,iBACA,oBACA,iBACA,iBACA,uBACA,oBACA,qBACA,gBACA,kBACA,uBACA,iBACA,qBACA,uBACA,iBACA,oBACA,iBACA,UACA,iBACA,iBACA,oBACA,iBACA,aACA,iBACA,cACA,2BACA,eACA,oBACA,oBACA,iBACA,kBACA,cACA,eACA,oBACA,cACA,iBACA,oBACA,kBACA,kBACA,eACA,iBACA,iBACA,qBACA,kBACA,iCACA,8BACA,gCACA,mBACA,oBACA,cACA,wBACA,4BACA,kBACA,4BACA,kBACA,WACA,uBACA,wBACA,8BACA,yBACA,4BACA,uBACA,2BACA,4BACA,0BACA,wBACA,kBACA,sBACA,oBACA,mBACA,wBACA,qBACA,kBACA,qBACA,yBACA,mBACA,UACA,aACA,eACA,aACA,uBACA,WACA,cACA,WACA,mBACA,qBACA,cACA,qBACA,UACA,UACA,aACA,UACA,yBACA,YACA,eACA,sBACA,sBACA,WACA,WACA,WACA,WACA,aACA,kBACA,eACA,eACA,aACA,UACA,YACA,iBACA,gBACA,cACA,cACA,YACA,eACA,gBACA,OACA,WACA,YACA,YACA,eACA,YACA,cACA,oBACA,oBACA,sBACA,gBACA,mBACA,mBACA,MACA,OACA,SACA,QACA,aACA,WACA,QACA,iBACA,cACA,oBACA,iBACA,iBACA,cACA,0BACA,mBACA,WACA,OACA,cACA,QACA,UACA,eACA,QACA,YACA,cACA,OACA,cACA,SACA,qBACA,OACA,OACA,gBACA,UACA,MACA,YACA,cACA,cACA,iBACA,gBACA,iBACA,cACA,cACA,kBACA,eACA,eACA,gBACA,cACA,aACA,sBACA,uBACA,wBACA,wBACA,2BACA,qBACA,sBACA,aACA,gBACA,aACA,gBACA,MACA,kBACA,UACA,mBACA,eACA,oBACA,eACA,gBACA,iBACA,kBACA,kBACA,WACA,mBACA,WACA,aACA,aACA,YACA,WACA,aACA,WACA,QACA,aACA,oBACA,WACA,YACA,mBACA,sBACA,wBACA,OACA,UACA,gBACA,KACA,cACA,OACA,iBACA,WACA,eACA,WACA,WACA,YACA,UACA,UACA,UACA,cACA,WACA,UACA,cACA,mBACA,oBACA,cACA,cACA,yBACA,sBACA,uBACA,2BACA,kBACA,oBACA,cACA,iBACA,wBACA,cACA,OACA,cACA,cACA,aACA,QACA,UACA,aACA,gBACA,UACA,WACA,SACA,WACA,WACA,cACA,eACA,YACA,iBACA,cACA,aACA,cACA,YACA,eACA,oBACA,4BACA,4BACA,oBACA,yBACA,iCACA,iCACA,mBACA,gBACA,YACA,eACA,aACA,SACA,YACA,gBACA,mBACA,SACA,YACA,UACA,OACA,WACA,SACA,aACA,cACA,UACA,kBACA,eACA,eACA,kBACA,aACA,UACA,mBACA,eACA,mBACA,aACA,kBACA,wBACA,eACA,iBACA,YACA,UACA,YACA,wBACA,QACA,mBACA,aACA,aACA,oBACA,iBACA,iBACA,iBACA,mBACA,8BACA,yBACA,uBACA,oBACA,YACA,YACA,qBACA,aACA,YACA,kBACA,iBACA,oBACA,mBACA,eACA,yBACA,kBACA,qBACA,qBACA,2BACA,iBACA,mBACA,WACA,iBACA,qBACA,2BACA,UACA,sBACA,cACA,kBACA,eACA,8BACA,2BACA,6BACA,WACA,iBACA,WACA,qBACA,kBACA,OACA,gBACA,YACA,gBACA,eACA,iBACA,aACA,aACA,kBACA,qBACA,oBACA,eACA,QACA,yBACA,0BACA,uBACA,wBACA,oBACA,qBACA,2BACA,sBACA,yBACA,oBACA,wBACA,yBACA,uBACA,qBACA,eACA,mBACA,YACA,iBACA,sBACA,eACA,gBACA,qBACA,kBACA,yBACA,eACA,kBACA,oBACA,yBACA,cACA,kBACA,gBACA,gBACA,UACA,eACA,oBACA,cACA,gBACA,YACA,aACA,OACA,UACA,UACA,UACA,iBACA,YACA,YACA,eACA,qBACA,iBAkCED,QAx4EY,CACd,SACA,WACA,aACA,cACA,cACA,OACA,OACA,QACA,UACA,cACA,YACA,eACA,MACA,UACA,QACA,KACA,aACA,aACA,kBACA,YACA,YACA,cACA,WACA,iBACA,OACA,SAg3EAG,SAAU,CACRT,EAAKU,oBACLV,EAAKgC,qBACLhC,EAAKgE,YA58EQ,CACfjD,UAAW,WACXC,MAAO,mBAKQ,CACfD,UAAW,QACXC,MAAO,uBAs8ELkI,EACAC,GAEF3G,QAAS,Y,SCrzDb1C,EAAOC,QAnpBP,SAAaC,GACX,MAAMyB,EAAQzB,EAAKyB,MACb2H,EAAepJ,EAAK8C,QAAQ,KAAM,KAiBlCgC,EAAW,CACf,OACA,QAGA,WAUIuE,EAAQ,CACZ,SACA,SACA,OACA,UACA,OACA,YACA,OACA,OACA,MACA,WACA,UACA,QACA,MACA,UACA,WACA,QACA,QACA,WACA,UACA,OACA,MACA,WACA,OACA,YACA,UACA,UACA,aAmYIC,EAAqB,CACzB,MACA,OACA,YACA,OACA,OACA,MACA,OACA,OACA,UACA,WACA,OACA,MACA,OACA,QACA,YACA,aACA,YACA,aACA,QACA,UACA,MACA,UACA,cACA,QACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,aACA,OACA,UACA,KACA,MACA,QACA,QACA,MACA,MACA,MACA,YACA,QACA,SACA,eACA,kBACA,kBACA,WACA,iBACA,QACA,OACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,aACA,MACA,OACA,OACA,aACA,cACA,YACA,kBACA,MACA,MACA,OACA,YACA,kBACA,QACA,OACA,aACA,SACA,QACA,WACA,UACA,WACA,gBAwBIC,EAAS,CACb,eACA,cACA,cACA,cACA,WACA,cACA,iBACA,gBACA,cACA,gBACA,gBACA,eACA,cACA,aACA,cACA,iBAGIC,EAAYF,EAEZxF,EAAW,CArff,MACA,OACA,MACA,WACA,QACA,MACA,MACA,MACA,QACA,YACA,wBACA,KACA,aACA,OACA,aACA,KACA,OACA,SACA,gBACA,MACA,QACA,cACA,kBACA,UACA,SACA,SACA,OACA,UACA,OACA,KACA,OACA,SACA,cACA,WACA,OACA,OACA,OACA,UACA,OACA,cACA,YACA,mBACA,QACA,aACA,OACA,QACA,WACA,UACA,UACA,SACA,SACA,YACA,UACA,aACA,WACA,UACA,OACA,OACA,gBACA,MACA,OACA,QACA,YACA,aACA,SACA,QACA,OACA,YACA,UACA,kBACA,eACA,kCACA,eACA,eACA,cACA,iBACA,eACA,oBACA,eACA,eACA,mCACA,eACA,SACA,QACA,OACA,MACA,aACA,MACA,UACA,WACA,UACA,UACA,SACA,SACA,aACA,QACA,WACA,gBACA,aACA,WACA,SACA,OACA,UACA,OACA,UACA,OACA,QACA,MACA,YACA,gBACA,WACA,SACA,SACA,QACA,SACA,OACA,UACA,SACA,MACA,WACA,UACA,QACA,QACA,SACA,cACA,QACA,QACA,MACA,UACA,YACA,OACA,OACA,OACA,WACA,SACA,MACA,SACA,QACA,QACA,WACA,SACA,SACA,OACA,OACA,WACA,KACA,YACA,UACA,QACA,QACA,cACA,SACA,MACA,UACA,YACA,eACA,WACA,OACA,KACA,OACA,aACA,gBACA,cACA,cACA,iBACA,aACA,aACA,uBACA,aACA,MACA,WACA,QACA,aACA,UACA,OACA,UACA,OACA,OACA,aACA,UACA,KACA,QACA,YACA,iBACA,MACA,QACA,QACA,QACA,eACA,kBACA,UACA,MACA,SACA,QACA,SACA,MACA,SACA,MACA,WACA,SACA,QACA,WACA,WACA,UACA,QACA,QACA,MACA,KACA,OACA,YACA,MACA,YACA,QACA,OACA,SACA,UACA,eACA,oBACA,KACA,SACA,MACA,OACA,KACA,MACA,OACA,OACA,KACA,QACA,MACA,QACA,OACA,WACA,UACA,YACA,YACA,UACA,MACA,UACA,eACA,kBACA,kBACA,SACA,UACA,WACA,iBACA,QACA,WACA,YACA,UACA,UACA,YACA,MACA,QACA,OACA,QACA,OACA,YACA,MACA,aACA,cACA,YACA,YACA,aACA,iBACA,UACA,aACA,WACA,WACA,WACA,UACA,SACA,SACA,UACA,SACA,QACA,WACA,SACA,MACA,aACA,OACA,UACA,YACA,QACA,SACA,SACA,SACA,OACA,SACA,YACA,eACA,MACA,OACA,UACA,MACA,OACA,OACA,WACA,OACA,WACA,eACA,MACA,eACA,WACA,aACA,OACA,QACA,SACA,aACA,cACA,cACA,SACA,YACA,kBACA,WACA,MACA,YACA,SACA,cACA,cACA,QACA,cACA,MACA,OACA,OACA,OACA,YACA,gBACA,kBACA,KACA,WACA,YACA,kBACA,cACA,QACA,UACA,OACA,aACA,OACA,WACA,UACA,QACA,SACA,UACA,SACA,SACA,QACA,OACA,QACA,QACA,SACA,WACA,UACA,WACA,YACA,UACA,UACA,aACA,OACA,WACA,QACA,eACA,SACA,OACA,SACA,UACA,OAzXA,MACA,MACA,YACA,OACA,QACA,QACA,OACA,QA6fA2F,QAAQpJ,IACAiJ,EAAmBI,SAASrJ,KAchCsJ,EAAgB,CACpB3I,MAAOS,EAAMC,OAAO,KAAMD,EAAMkB,UAAU6G,GAAY,SACtDjI,UAAW,EACXpB,SAAU,CAAEI,SAAUiJ,IAoBxB,MAAO,CACLvJ,KAAM,MACN4B,kBAAkB,EAElBW,QAAS,WACTrC,SAAU,CACRC,SAAU,YACVC,QAvBJ,SAAyBuJ,GAAM,WAC7BC,EAAU,KAAEC,GACV,IACF,MAAMC,EAAYD,EAElB,OADAD,EAAaA,GAAc,GACpBD,EAAKpG,KAAKwG,GACXA,EAAKhH,MAAM,WAAa6G,EAAWH,SAASM,GACvCA,EACED,EAAUC,GACZ,GAAGA,MAEHA,IAaPC,CAAgBnG,EAAU,CAAEgG,KAAOI,GAAMA,EAAEC,OAAS,IACtD7J,QAASwE,EACTtE,KAAM6I,EACN9I,SA7F4B,CAC9B,kBACA,eACA,kCACA,eACA,eACA,iBACA,mCACA,eACA,eACA,cACA,cACA,eACA,YACA,oBACA,mBAgFAE,SAAU,CACR,CACEO,MAAOS,EAAMkB,UAAU4G,GACvBhI,UAAW,EACXpB,SAAU,CACRC,SAAU,UACVC,QAASyD,EAASpC,OAAO6H,GACzBjJ,QAASwE,EACTtE,KAAM6I,IAGV,CACEtI,UAAW,OACXC,MAAOS,EAAMkB,OAzmBjB,mBACA,eACA,gBACA,qBAwmBEgH,EA9Da,CACf5I,UAAW,WACXC,MAAO,cAxkBM,CACbD,UAAW,SACXkB,SAAU,CACR,CACEjB,MAAO,IACPE,IAAK,IACLT,SAAU,CAAE,CAAEO,MAAO,UAID,CACxBA,MAAO,IACPE,IAAK,IACLT,SAAU,CAAE,CAAEO,MAAO,QA2nBnBhB,EAAKY,cACLZ,EAAKgC,qBACLoH,EA/Da,CACfrI,UAAW,WACXC,MAAO,gDACPO,UAAW,O,OC3HfzB,EAAOC,QApeP,SAAcC,GACZ,MAAMyB,EAAQzB,EAAKyB,MA8Rb2I,EAAgB,CACpB,YACA,kBACA,sBACA,OACA,gBACA,kBACA,WACA,iBACA,cACA,oBACA,wBACA,SACA,aACA,YACA,iBACA,qBACA,iBACA,cACA,UACA,QACA,mBACA,SACA,aACA,iBACA,iBACA,YACA,cACA,WACA,oBACA,WACA,YACA,WACA,oBACA,eACA,wBACA,oBACA,kBACA,cACA,oBACA,eACA,iBACA,qBACA,yBACA,SACA,gBACA,mBACA,uBACA,iBACA,SACA,gBACA,UACA,cACA,kBACA,WACA,wBACA,0BACA,cACA,aACA,YACA,UACA,YACA,UACA,SACA,WAGInC,EAAgBjI,EAAK8C,QACzB,OACA,OACA,CACEvB,UAAW,EACXd,SAAU,CACR,CACEsC,MAAO,SACPC,MAAO,sBAMTqH,EAAU,CACdtH,MAAO,OACP/B,MAAO,aACPE,IAAK,IACLT,SAAU,CACR,CACEuC,MAAO,iBACPD,MAAO,UAET/C,EAAKU,sBAIH4J,EAAoB,CACxB,QACA,QACA,SACA,cAGF,MAAO,CACLrK,KAAM,OACNC,QAAS,CAAE,aACXC,SAAU,CACRC,SAAUJ,EAAKyC,SACf8H,MAtYW,CACb,YACA,QACA,OACA,aACA,aACA,cACA,aAgYE/J,KAlXU,CACZ,QACA,UACA,MACA,OACA,SACA,UACA,mBACA,UACA,cACA,aACA,SACA,0BACA,yBACA,iBACA,gBACA,QAmWEH,QA9Xe,CACjB,MACA,KACA,KACA,OACA,QACA,QACA,WACA,UAuXEE,SAzVc,CAChB,MACA,aACA,MACA,OACA,QACA,WACA,iBACA,wBACA,eACA,aACA,aACA,OACA,QACA,OACA,QACA,QACA,oBACA,qBACA,kBACA,2BACA,QACA,OACA,OACA,WACA,qBACA,SACA,MACA,OACA,sBACA,mBACA,OACA,MACA,OACA,eACA,YACA,gBACA,gBACA,gBACA,0BACA,sBACA,iBACA,cACA,cACA,qBACA,oBACA,WACA,UACA,OACA,WACA,cACA,WACA,kBACA,mBACA,MACA,OACA,MACA,OACA,QACA,OACA,oBACA,OACA,QACA,MACA,OACA,OACA,OACA,UACA,UACA,sBACA,WACA,SACA,WACA,OACA,wBACA,eACA,QACA,kBACA,WACA,WACA,eACA,gBACA,sBACA,oBACA,qBACA,MACA,UACA,cACA,YACA,WACA,aACA,UACA,cACA,SACA,SACA,aACA,cACA,QACA,UACA,QACA,SACA,kBACA,sBACA,uBACA,mBACA,UACA,YACA,MACA,QACA,YACA,kBACA,QACA,YACA,kBACA,eACA,wBACA,gBACA,qBACA,UACA,iCACA,uBACA,cACA,cACA,QACA,oBACA,WACA,aACA,sBACA,eACA,MACA,mBACA,uBACA,oBACA,wBACA,OACA,MACA,6BACA,8BACA,eACA,oCACA,oBACA,OACA,eACA,eACA,YACA,gBACA,sBACA,UACA,cACA,WACA,eACA,WACA,eACA,gBACA,oBACA,qBACA,iBACA,aACA,iBACA,kBACA,cACA,UACA,QACA,oBACA,MACA,QACA,OACA,OACA,OACA,OACA,YACA,YACA,YACA,iBACA,gBACA,WACA,OACA,aACA,SACA,YACA,aACA,iBACA,aACA,UACA,mBACA,QACA,MACA,OACA,mBACA,gBACA,4BACA,KACA,UACA,MACA,kBACA,OACA,OACA,UACA,WACA,YACA,mBACA,oBACA,OACA,SACA,mBACA,OACA,UACA,UACA,MACA,QACA,QACA,4BACA,OACA,MACA,OACA,SACA,aACA,SACA,cACA,cACA,aACA,YACA,gBACA,YACA,QACA,sBACA,kBACA,WACA,QACA,kBACA,WACA,cACA,kBACA,qBAkHAE,SAAU,CACRT,EAAKU,oBACL2J,EACArK,EAAKmD,kBACL8E,EACA,CACElF,MAAO,WACPC,MAAO,kCACPzB,UAAW,GAEb,CACEyB,MAAOvB,EAAMC,OAAO,UAAWD,EAAMkB,UAAU2H,GAAoB,QACnEnK,SAAUmK,GAEZ,CACEvH,MAAO,UACPC,MAAO,sBAET,CAEEA,MAAO,CACL,OACAvB,EAAMkB,UAAUyH,GAChB,WACA,iBAEFrH,MAAO,CACL,EAAG,WACH,EAAG,YAGP,CAEEA,MAAO,WACP5C,SAAUiK,EACVpJ,MAAOS,EAAMC,OAAO,MAAOD,EAAMkB,UAAUyH,GAAgB,8DAE7D,CAEEpJ,MAAO,CACL,IACA,MACAS,EAAMC,OAAOD,EAAMkB,UAAUyH,GAAgB,oBAE/CrH,MAAO,CAAE,EAAG,aAEd,CAEE/B,MAAO,CACL,IACA,wBACA,YAAcS,EAAMkB,UAAUyH,GAAiB,QAEjDrH,MAAO,CAAE,EAAG,mBAEd,CAEEA,MAAO,iBACP/B,MAAO,gEAET,CACE+B,MAAO,SACPC,MAAOvB,EAAMC,OAQX,8DAGA,sCAEFH,UAAW,GAEb,CACEwB,MAAO,SACP/B,MAAO,IACPE,IAAK,S,QClbbpB,EAAOC,QAvCP,SAAeC,GACb,MAAO,CACLC,KAAM,QACNC,QAAS,CACP,KACA,OAEF2B,kBAAkB,EAClB1B,SAAU,4/cACVM,SAAU,CACR,CACEM,UAAW,SACXC,MAAO,mBAET,CACED,UAAW,WACXC,MAAO,wBACPO,UAAW,GAEb,CACER,UAAW,SACXkB,SAAU,CACR,CAAEjB,MAAO,kBACT,CAAEA,MAAO,iBAIb,CACED,UAAW,WACXkB,SAAU,CAAE,CAAEjB,MAAO,q5CAGvBhB,EAAK8C,QAAQ,iBAAiB,GAC9B9C,EAAKU,oBACLV,EAAKgC,yB,SCkBXlC,EAAOC,QA1DP,SAAgBC,GAqBd,MAAO,CACLC,KAAM,eACNC,QAAS,CACP,MACA,OACA,OAEF2B,kBAAkB,EAClB1B,SA3BsB,CACtBC,SAFsB,oBAGtBC,QAAS,CACP,SACA,SACA,SAuBFI,SAAU,CApBS,CACnBM,UAAW,OACXC,MAAO,gBACPO,UAAW,IAEQ,CACnBR,UAAW,OACXC,MAAO,oBACPO,UAAW,IAeTvB,EAAKU,oBACLV,EAAKgC,qBACLhC,EAAK8C,QAAQ,WAAY,QACzB9C,EAAKY,cACLZ,EAAK2B,QAAQ3B,EAAK8B,iBAAkB,CAAEU,QAAS,OAC/CxC,EAAK2B,QAAQ3B,EAAKW,kBAAmB,CAAE6B,QAAS,OAChD,CACEzB,UAAW,SACXC,MAAO,IACPE,IAAK,KAEP,CACEH,UAAW,SACXkB,SAAU,CACR,CACEjB,MAAO,IACPE,IAAK,OACLsB,QAAS,a,SCzDrB,MA6CMiF,EAAO,CACX,IACA,OACA,UACA,UACA,QACA,QACA,IACA,aACA,OACA,SACA,SACA,UACA,OACA,OACA,KACA,MACA,UACA,MACA,MACA,KACA,KACA,KACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,OACA,OACA,MACA,SACA,KACA,IACA,IACA,QACA,OACA,UACA,OACA,SACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,KACA,KACA,MACA,SAGIC,EAAiB,CACrB,YACA,cACA,eACA,QACA,cACA,cACA,sBACA,gBACA,eACA,eACA,gBACA,OACA,SACA,QACA,kBACA,aACA,cACA,iBACA,kBACA,UACA,uBACA,mBACA,yBACA,+BACA,aACA,OACA,YACA,SACA,QAEA,YACA,YACA,aACA,cAIIC,EAAiB,CACrB,SACA,WACA,QACA,UACA,UACA,UACA,UACA,MACA,WACA,OACA,QACA,UACA,QACA,cACA,gBACA,aACA,SACA,QACA,gBACA,eACA,MACA,OACA,eACA,QACA,gBACA,WACA,UACA,KACA,OACA,aACA,eACA,OACA,OACA,aACA,MACA,YACA,UACA,iBACA,eACA,mBACA,cACA,aACA,eACA,WACA,eACA,OACA,oBACA,YACA,aACA,WACA,QACA,OACA,QACA,SACA,gBACA,eACA,QACA,UACA,SAIIC,EAAkB,CACtB,QACA,WACA,SACA,MACA,aACA,eACA,aACA,gBACA,SACA,OACA,cACA,YACA,UACA,kBAGIC,EAAa,CACjB,gBACA,cACA,aACA,MACA,YACA,kBACA,sBACA,qBACA,sBACA,4BACA,iBACA,uBACA,4BACA,sBACA,aACA,wBACA,wBACA,kBACA,mBACA,mBACA,oBACA,sBACA,oBACA,kBACA,aACA,SACA,eACA,qBACA,mBACA,yBACA,yBACA,yBACA,qBACA,2BACA,2BACA,2BACA,qBACA,qBACA,gBACA,sBACA,4BACA,6BACA,sBACA,sBACA,kBACA,eACA,eACA,sBACA,sBACA,qBACA,sBACA,qBACA,gBACA,sBACA,oBACA,0BACA,0BACA,0BACA,sBACA,4BACA,4BACA,4BACA,sBACA,sBACA,cACA,oBACA,oBACA,oBACA,gBACA,eACA,qBACA,qBACA,qBACA,iBACA,eACA,aACA,mBACA,yBACA,0BACA,mBACA,mBACA,eACA,SACA,uBACA,aACA,aACA,cACA,eACA,eACA,eACA,cACA,QACA,OACA,YACA,YACA,QACA,eACA,cACA,aACA,cACA,oBACA,oBACA,oBACA,cACA,eACA,UACA,UACA,UACA,qBACA,oBACA,gBACA,MACA,YACA,aACA,SACA,YACA,UACA,cACA,SACA,OACA,aACA,iBACA,YACA,YACA,cACA,YACA,QACA,OACA,OACA,eACA,cACA,wBACA,eACA,yBACA,YACA,mBACA,iBACA,eACA,aACA,iBACA,eACA,oBACA,0BACA,yBACA,uBACA,wBACA,0BACA,cACA,MACA,6BACA,OACA,YACA,oBACA,iBACA,iBACA,cACA,kBACA,oBACA,WACA,WACA,eACA,iBACA,gBACA,sBACA,wBACA,qBACA,sBACA,SACA,UACA,OACA,oBACA,kBACA,mBACA,WACA,cACA,YACA,kBACA,OACA,iBACA,aACA,cACA,aACA,mBACA,sBACA,kBACA,SACA,eACA,mBACA,qBACA,gBACA,gBACA,oBACA,sBACA,cACA,eACA,aACA,QACA,OACA,cACA,mBACA,qBACA,qBACA,oBACA,qBACA,oBACA,YACA,iBACA,aACA,YACA,cACA,gBACA,cACA,YACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,aACA,kBACA,YACA,iBACA,WACA,YACA,WACA,YACA,SACA,OACA,SACA,aACA,kBACA,UACA,QACA,UACA,UACA,gBACA,iBACA,gBACA,gBACA,WACA,gBACA,aACA,aACA,UACA,gBACA,oBACA,sBACA,iBACA,iBACA,qBACA,uBACA,eACA,gBACA,cACA,mBACA,oBACA,oBACA,QACA,cACA,eACA,cACA,qBACA,iBACA,WACA,SACA,SACA,OACA,aACA,cACA,QACA,UACA,gBACA,sBACA,0BACA,4BACA,uBACA,uBACA,2BACA,6BACA,qBACA,sBACA,oBACA,iBACA,uBACA,2BACA,6BACA,wBACA,wBACA,4BACA,8BACA,sBACA,uBACA,qBACA,oBACA,mBACA,mBACA,kBACA,mBACA,kBACA,wBACA,eACA,gBACA,QACA,WACA,MACA,WACA,eACA,aACA,iBACA,kBACA,uBACA,kBACA,wBACA,uBACA,wBACA,gBACA,sBACA,yBACA,sBACA,cACA,eACA,mBACA,gBACA,iBACA,cACA,iBACA,0BACA,MACA,YACA,gBACA,mBACA,kBACA,aACA,mBACA,sBACA,sBACA,6BACA,eACA,iBACA,aACA,gBACA,iBACA,eACA,cACA,cACA,aACA,eACA,eACA,cACA,SACA,QACA,cACA,aACA,eACA,YACA,eACA,WAGAC,UA0LFhI,EAAOC,QA/KP,SAAgBC,GACd,MAAM+H,EAnmBM,CAAC/H,IACN,CACLgI,UAAW,CACTjF,MAAO,OACP/B,MAAO,cAETi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zB+K,EAAc,CAClB,WACA,QACA5H,IAAI0H,GAGAG,EAAsB,CAC1B,OACA,QACA7H,IAAI0H,GAGAI,EAAe,CACnB,MACA,QAIInL,EAAW,CAIf,QACA,iBACA,QACA,QACA,OACA,MACA,KACA,QACA,OACA,QACA,QACA,WACA,cACA,UACA,QACA,SACA,SACA,KACA,UACA,OACA,OACA,YACA,cACA,qBACA,cACA,QACA,MACA,OACA,MACA,QACA,KACA,SACA,WACA,QACA,SACA,QACA,QACA,kBACA,WACA,KACA,KACA,WACA,cACA,OACA,MACA,WACA,cACA,cACA,OACA,WACA,WACA,WACA,UACA,kBACA,SACA,iBACA,UACA,WACA,gBACA,SACA,SACA,WACA,WACA,SACA,MACA,OACA,SACA,SACA,YACA,QACA,SACA,SACA,QACA,QACA,OACA,MACA,YACA,kBACA,oBACA,UACA,MACA,OACA,QACA,QACA,WAOIoL,EAAW,CACf,QACA,MACA,QAIIC,EAA0B,CAC9B,aACA,gBACA,aACA,OACA,YACA,OACA,SAKIC,EAAqB,CACzB,gBACA,UACA,aACA,QACA,UACA,SACA,SACA,QACA,UACA,eACA,YACA,YACA,MACA,gBACA,WACA,QACA,YACA,kBACA,2BACA,YAIIC,EAAW,CACf,MACA,MACA,MACA,SACA,mBACA,aACA,OACA,aACA,YACA,4BACA,MACA,MACA,cACA,eACA,eACA,eACA,sBACA,QACA,WACA,gBACA,WACA,SACA,OACA,oCACA,YACA,OACA,gBACA,iBACA,uBACA,2BACA,oBACA,aACA,0BACA,OAIIC,EAAehJ,EACnB,oBACA,kBACA,iBACA,iBACA,iBACA,mCACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,YAIIiJ,EAAoBjJ,EACxBgJ,EACA,kBACA,kBACA,kBACA,kBACA,mBAMIE,EAAWnK,EAAOiK,EAAcC,EAAmB,KAGnDE,EAAiBnJ,EACrB,YACA,uDACA,yDACA,yDACA,kBACA,+DACA,yDACA,+BACA,yD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ACLC,KAAM,yBACN4B,kBAAkB,EAClBpB,SAAU,CACRT,EAAKmD,kBAEL,CACEpC,UAAW,OACXkB,SAAU,CACR,CAAEjB,MAAO,wBACT,CAAEA,MAAO,qBAIb,CACEA,MAAO,OACPE,IAAK,aACLmB,YAAa,OACbd,UAAW,GAGb,CACER,UAAW,SACXC,MAAO,YAGT,CACED,UAAW,SACXkB,SAAU,CACR,CAAEjB,MAAO,OACT,CAAEA,MAAO,iB,SCsJnBlB,EAAOC,QAtLP,SAAaC,GACX,MAAMyB,EAAQzB,EAAKyB,MACb6M,EAAY,yBAEZvI,EAAS,CACbhF,UAAW,SACXkB,SAAU,CACRjC,EAAKuO,mBACLvO,EAAKY,gBA6HT,MAAO,CACLX,KAAM,MACNC,QAAS,CAAE,MACXC,SA5He,CACf,QACA,SACA,QACA,QACA,cACA,cACA,YACA,eACA,mBACA,eACA,aACA,UACA,SACA,QACA,QACA,KACA,OACA,QACA,QACA,SACA,WACA,MACA,OACA,WACA,MACA,QACA,OACA,OACA,OACA,OACA,WACA,aACA,QACA,OACA,YACA,WACA,QACA,MACA,UACA,SACA,OACA,OACA,SACA,UACA,OACA,KACA,OACA,OACA,SACA,OACA,aACA,aACA,YACA,aACA,OACA,aACA,OACA,YACA,aACA,cACA,cACA,aACA,UACA,WACA,WACA,SACA,SACA,SACA,YACA,OACA,UACA,SACA,MACA,cACA,cACA,WACA,kBACA,OACA,OACA,MACA,OACA,UACA,SACA,WACA,YACA,SACA,SACA,OACA,OACA,OACA,MACA,SACA,SACA,QACA,SACA,QACA,SACA,gBACA,kBACA,sBACA,0BACA,qBACA,sBACA,UACA,UACA,OACA,OACA,KACA,QACA,UACA,SACA,QACA,SACA,UACA,QACA,WACA,QACA,SAOAM,SAAU,CACRT,EAAK8C,QAAQ,YAAa,KAC1B9C,EAAK8C,QAAQ,YAAa,KAC1B,CACER,cAAe,OACfpB,IAAK,QACLI,YAAY,EACZb,SAAU,CACR,CACEM,UAAW,QACXC,MAAO,kDACPE,IAAK,eACLgE,gBAAgB,EAChB5D,YAAY,KAIlB,CACEP,UAAW,WACXkB,SAAU,CACR,CAAEjB,MAAOS,EAAMC,OACb,KACAD,EAAM+M,SAAS,MACfF,EACA,MACAA,EACA,OAEF,CACEtN,MAAO,2CACPE,IAAK,MACLT,SAAU,CAAEsF,MAIlB,CACEhF,UAAW,SACXN,SAAU,CAAET,EAAK+B,kBACjBE,SAAU,CAAEjC,EAAK2B,QAAQ3B,EAAKW,kBAAmB,CAAE6B,QAAS,SAE9DuD,M,QC5GNjG,EAAOC,QApEP,SAAgBC,GACd,MAAMqJ,EAAQ,CACZ,OACA,OACA,MACA,MACA,MACA,SACA,SACA,UAkBF,MAAO,CACLpJ,KAAM,SACNE,SAAU,CACRE,QAnBa,CACf,YACA,QACA,UACA,SACA,OACA,UACA,YACA,OACA,SACA,MACA,OACA,MACA,WACA,YAMEG,KAAM6I,EACN/I,QAAS,cAEXG,SAAU,CACRT,EAAKW,kBACLX,EAAKgE,YACLhE,EAAKU,oBACLV,EAAKgC,qBACL,CACEjB,UAAW,QACXuB,cAAe,gCACfpB,IAAK,KACLsB,QAAS,KACT/B,SAAU,CACRT,EAAK2B,QAAQ3B,EAAK4B,WAAY,CAE5BX,OAAQ,CACNiE,gBAAgB,EAChB5D,YAAY,OAIpB,CACEN,MAAO,yBACPb,SAAU,CAAEK,KAAM,IACb6I,EACH,MACA,OACA,QAEFnI,IAAK,IACLT,SAAU,CAAE","sources":["webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/q.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/qml.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/r.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/reasonml.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/rib.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/roboconf.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/routeros.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/rsl.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/ruby.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/ruleslanguage.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/rust.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/sas.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/scala.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/scheme.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/scilab.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/scss.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/shell.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/smali.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/smalltalk.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/sml.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/sqf.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/sql.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/stan.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/stata.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/step21.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/stylus.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/subunit.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/swift.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/taggerscript.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/tap.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/tcl.js","webpack://sakurairo-scripts/./node_modules/highlight.js/lib/languages/thrift.js"],"sourcesContent":["/*\nLanguage: Q\nDescription: Q is a vector-based functional paradigm programming language built into the kdb+ database.\n (K/Q/Kdb+ from Kx Systems)\nAuthor: Sergey Vidyuk <svidyuk@gmail.com>\nWebsite: https://kx.com/connect-with-us/developers/\n*/\n\nfunction q(hljs) {\n const KEYWORDS = {\n $pattern: /(`?)[A-Za-z0-9_]+\\b/,\n keyword:\n 'do while select delete by update from',\n literal:\n '0b 1b',\n built_in:\n 'neg not null string reciprocal floor ceiling signum mod xbar xlog and or each scan over prior mmu lsq inv md5 ltime gtime count first var dev med cov cor all any rand sums prds mins maxs fills deltas ratios avgs differ prev next rank reverse iasc idesc asc desc msum mcount mavg mdev xrank mmin mmax xprev rotate distinct group where flip type key til get value attr cut set upsert raze union inter except cross sv vs sublist enlist read0 read1 hopen hclose hdel hsym hcount peach system ltrim rtrim trim lower upper ssr view tables views cols xcols keys xkey xcol xasc xdesc fkeys meta lj aj aj0 ij pj asof uj ww wj wj1 fby xgroup ungroup ej save load rsave rload show csv parse eval min max avg wavg wsum sin cos tan sum',\n type:\n '`float `double int `timestamp `timespan `datetime `time `boolean `symbol `char `byte `short `long `real `month `date `minute `second `guid'\n };\n\n return {\n name: 'Q',\n aliases: [\n 'k',\n 'kdb'\n ],\n keywords: KEYWORDS,\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.QUOTE_STRING_MODE,\n hljs.C_NUMBER_MODE\n ]\n };\n}\n\nmodule.exports = q;\n","/*\nLanguage: QML\nRequires: javascript.js, xml.js\nAuthor: John Foster <jfoster@esri.com>\nDescription: Syntax highlighting for the Qt Quick QML scripting language, based mostly off\n the JavaScript parser.\nWebsite: https://doc.qt.io/qt-5/qmlapplications.html\nCategory: scripting\n*/\n\nfunction qml(hljs) {\n const regex = hljs.regex;\n const KEYWORDS = {\n keyword:\n 'in of on if for while finally var new function do return void else break catch '\n + 'instanceof with throw case default try this switch continue typeof delete '\n + 'let yield const export super debugger as async await import',\n literal:\n 'true false null undefined NaN Infinity',\n built_in:\n 'eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent '\n + 'encodeURI encodeURIComponent escape unescape Object Function Boolean Error '\n + 'EvalError InternalError RangeError ReferenceError StopIteration SyntaxError '\n + 'TypeError URIError Number Math Date String RegExp Array Float32Array '\n + 'Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array '\n + 'Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require '\n + 'module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect '\n + 'Behavior bool color coordinate date double enumeration font geocircle georectangle '\n + 'geoshape int list matrix4x4 parent point quaternion real rect '\n + 'size string url variant vector2d vector3d vector4d '\n + 'Promise'\n };\n\n const QML_IDENT_RE = '[a-zA-Z_][a-zA-Z0-9\\\\._]*';\n\n // Isolate property statements. Ends at a :, =, ;, ,, a comment or end of line.\n // Use property class.\n const PROPERTY = {\n className: 'keyword',\n begin: '\\\\bproperty\\\\b',\n starts: {\n className: 'string',\n end: '(:|=|;|,|//|/\\\\*|$)',\n returnEnd: true\n }\n };\n\n // Isolate signal statements. Ends at a ) a comment or end of line.\n // Use property class.\n const SIGNAL = {\n className: 'keyword',\n begin: '\\\\bsignal\\\\b',\n starts: {\n className: 'string',\n end: '(\\\\(|:|=|;|,|//|/\\\\*|$)',\n returnEnd: true\n }\n };\n\n // id: is special in QML. When we see id: we want to mark the id: as attribute and\n // emphasize the token following.\n const ID_ID = {\n className: 'attribute',\n begin: '\\\\bid\\\\s*:',\n starts: {\n className: 'string',\n end: QML_IDENT_RE,\n returnEnd: false\n }\n };\n\n // Find QML object attribute. An attribute is a QML identifier followed by :.\n // Unfortunately it's hard to know where it ends, as it may contain scalars,\n // objects, object definitions, or javascript. The true end is either when the parent\n // ends or the next attribute is detected.\n const QML_ATTRIBUTE = {\n begin: QML_IDENT_RE + '\\\\s*:',\n returnBegin: true,\n contains: [\n {\n className: 'attribute',\n begin: QML_IDENT_RE,\n end: '\\\\s*:',\n excludeEnd: true,\n relevance: 0\n }\n ],\n relevance: 0\n };\n\n // Find QML object. A QML object is a QML identifier followed by { and ends at the matching }.\n // All we really care about is finding IDENT followed by { and just mark up the IDENT and ignore the {.\n const QML_OBJECT = {\n begin: regex.concat(QML_IDENT_RE, /\\s*\\{/),\n end: /\\{/,\n returnBegin: true,\n relevance: 0,\n contains: [ hljs.inherit(hljs.TITLE_MODE, { begin: QML_IDENT_RE }) ]\n };\n\n return {\n name: 'QML',\n aliases: [ 'qt' ],\n case_insensitive: false,\n keywords: KEYWORDS,\n contains: [\n {\n className: 'meta',\n begin: /^\\s*['\"]use (strict|asm)['\"]/\n },\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n { // template string\n className: 'string',\n begin: '`',\n end: '`',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n {\n className: 'subst',\n begin: '\\\\$\\\\{',\n end: '\\\\}'\n }\n ]\n },\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n {\n className: 'number',\n variants: [\n { begin: '\\\\b(0[bB][01]+)' },\n { begin: '\\\\b(0[oO][0-7]+)' },\n { begin: hljs.C_NUMBER_RE }\n ],\n relevance: 0\n },\n { // \"value\" container\n begin: '(' + hljs.RE_STARTERS_RE + '|\\\\b(case|return|throw)\\\\b)\\\\s*',\n keywords: 'return throw case',\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.REGEXP_MODE,\n { // E4X / JSX\n begin: /</,\n end: />\\s*[);\\]]/,\n relevance: 0,\n subLanguage: 'xml'\n }\n ],\n relevance: 0\n },\n SIGNAL,\n PROPERTY,\n {\n className: 'function',\n beginKeywords: 'function',\n end: /\\{/,\n excludeEnd: true,\n contains: [\n hljs.inherit(hljs.TITLE_MODE, { begin: /[A-Za-z$_][0-9A-Za-z$_]*/ }),\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n }\n ],\n illegal: /\\[|%/\n },\n {\n // hack: prevents detection of keywords after dots\n begin: '\\\\.' + hljs.IDENT_RE,\n relevance: 0\n },\n ID_ID,\n QML_ATTRIBUTE,\n QML_OBJECT\n ],\n illegal: /#/\n };\n}\n\nmodule.exports = qml;\n","/*\nLanguage: R\nDescription: R is a free software environment for statistical computing and graphics.\nAuthor: Joe Cheng <joe@rstudio.org>\nContributors: Konrad Rudolph <konrad.rudolph@gmail.com>\nWebsite: https://www.r-project.org\nCategory: common,scientific\n*/\n\n/** @type LanguageFn */\nfunction r(hljs) {\n const regex = hljs.regex;\n // Identifiers in R cannot start with `_`, but they can start with `.` if it\n // is not immediately followed by a digit.\n // R also supports quoted identifiers, which are near-arbitrary sequences\n // delimited by backticks (`…`), which may contain escape sequences. These are\n // handled in a separate mode. See `test/markup/r/names.txt` for examples.\n // FIXME: Support Unicode identifiers.\n const IDENT_RE = /(?:(?:[a-zA-Z]|\\.[._a-zA-Z])[._a-zA-Z0-9]*)|\\.(?!\\d)/;\n const NUMBER_TYPES_RE = regex.either(\n // Special case: only hexadecimal binary powers can contain fractions\n /0[xX][0-9a-fA-F]+\\.[0-9a-fA-F]*[pP][+-]?\\d+i?/,\n // Hexadecimal numbers without fraction and optional binary power\n /0[xX][0-9a-fA-F]+(?:[pP][+-]?\\d+)?[Li]?/,\n // Decimal numbers\n /(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+)?[Li]?/\n );\n const OPERATORS_RE = /[=!<>:]=|\\|\\||&&|:::?|<-|<<-|->>|->|\\|>|[-+*\\/?!$&|:<=>@^~]|\\*\\*/;\n const PUNCTUATION_RE = regex.either(\n /[()]/,\n /[{}]/,\n /\\[\\[/,\n /[[\\]]/,\n /\\\\/,\n /,/\n );\n\n return {\n name: 'R',\n\n keywords: {\n $pattern: IDENT_RE,\n keyword:\n 'function if in break next repeat else for while',\n literal:\n 'NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 '\n + 'NA_character_|10 NA_complex_|10',\n built_in:\n // Builtin constants\n 'LETTERS letters month.abb month.name pi T F '\n // Primitive functions\n // These are all the functions in `base` that are implemented as a\n // `.Primitive`, minus those functions that are also keywords.\n + 'abs acos acosh all any anyNA Arg as.call as.character '\n + 'as.complex as.double as.environment as.integer as.logical '\n + 'as.null.default as.numeric as.raw asin asinh atan atanh attr '\n + 'attributes baseenv browser c call ceiling class Conj cos cosh '\n + 'cospi cummax cummin cumprod cumsum digamma dim dimnames '\n + 'emptyenv exp expression floor forceAndCall gamma gc.time '\n + 'globalenv Im interactive invisible is.array is.atomic is.call '\n + 'is.character is.complex is.double is.environment is.expression '\n + 'is.finite is.function is.infinite is.integer is.language '\n + 'is.list is.logical is.matrix is.na is.name is.nan is.null '\n + 'is.numeric is.object is.pairlist is.raw is.recursive is.single '\n + 'is.symbol lazyLoadDBfetch length lgamma list log max min '\n + 'missing Mod names nargs nzchar oldClass on.exit pos.to.env '\n + 'proc.time prod quote range Re rep retracemem return round '\n + 'seq_along seq_len seq.int sign signif sin sinh sinpi sqrt '\n + 'standardGeneric substitute sum switch tan tanh tanpi tracemem '\n + 'trigamma trunc unclass untracemem UseMethod xtfrm',\n },\n\n contains: [\n // Roxygen comments\n hljs.COMMENT(\n /#'/,\n /$/,\n { contains: [\n {\n // Handle `@examples` separately to cause all subsequent code\n // until the next `@`-tag on its own line to be kept as-is,\n // preventing highlighting. This code is example R code, so nested\n // doctags shouldn’t be treated as such. See\n // `test/markup/r/roxygen.txt` for an example.\n scope: 'doctag',\n match: /@examples/,\n starts: {\n end: regex.lookahead(regex.either(\n // end if another doc comment\n /\\n^#'\\s*(?=@[a-zA-Z]+)/,\n // or a line with no comment\n /\\n^(?!#')/\n )),\n endsParent: true\n }\n },\n {\n // Handle `@param` to highlight the parameter name following\n // after.\n scope: 'doctag',\n begin: '@param',\n end: /$/,\n contains: [\n {\n scope: 'variable',\n variants: [\n { match: IDENT_RE },\n { match: /`(?:\\\\.|[^`\\\\])+`/ }\n ],\n endsParent: true\n }\n ]\n },\n {\n scope: 'doctag',\n match: /@[a-zA-Z]+/\n },\n {\n scope: 'keyword',\n match: /\\\\[a-zA-Z]+/\n }\n ] }\n ),\n\n hljs.HASH_COMMENT_MODE,\n\n {\n scope: 'string',\n contains: [ hljs.BACKSLASH_ESCAPE ],\n variants: [\n hljs.END_SAME_AS_BEGIN({\n begin: /[rR]\"(-*)\\(/,\n end: /\\)(-*)\"/\n }),\n hljs.END_SAME_AS_BEGIN({\n begin: /[rR]\"(-*)\\{/,\n end: /\\}(-*)\"/\n }),\n hljs.END_SAME_AS_BEGIN({\n begin: /[rR]\"(-*)\\[/,\n end: /\\](-*)\"/\n }),\n hljs.END_SAME_AS_BEGIN({\n begin: /[rR]'(-*)\\(/,\n end: /\\)(-*)'/\n }),\n hljs.END_SAME_AS_BEGIN({\n begin: /[rR]'(-*)\\{/,\n end: /\\}(-*)'/\n }),\n hljs.END_SAME_AS_BEGIN({\n begin: /[rR]'(-*)\\[/,\n end: /\\](-*)'/\n }),\n {\n begin: '\"',\n end: '\"',\n relevance: 0\n },\n {\n begin: \"'\",\n end: \"'\",\n relevance: 0\n }\n ],\n },\n\n // Matching numbers immediately following punctuation and operators is\n // tricky since we need to look at the character ahead of a number to\n // ensure the number is not part of an identifier, and we cannot use\n // negative look-behind assertions. So instead we explicitly handle all\n // possible combinations of (operator|punctuation), number.\n // TODO: replace with negative look-behind when available\n // { begin: /(?<![a-zA-Z0-9._])0[xX][0-9a-fA-F]+\\.[0-9a-fA-F]*[pP][+-]?\\d+i?/ },\n // { begin: /(?<![a-zA-Z0-9._])0[xX][0-9a-fA-F]+([pP][+-]?\\d+)?[Li]?/ },\n // { begin: /(?<![a-zA-Z0-9._])(\\d+(\\.\\d*)?|\\.\\d+)([eE][+-]?\\d+)?[Li]?/ }\n {\n relevance: 0,\n variants: [\n {\n scope: {\n 1: 'operator',\n 2: 'number'\n },\n match: [\n OPERATORS_RE,\n NUMBER_TYPES_RE\n ]\n },\n {\n scope: {\n 1: 'operator',\n 2: 'number'\n },\n match: [\n /%[^%]*%/,\n NUMBER_TYPES_RE\n ]\n },\n {\n scope: {\n 1: 'punctuation',\n 2: 'number'\n },\n match: [\n PUNCTUATION_RE,\n NUMBER_TYPES_RE\n ]\n },\n {\n scope: { 2: 'number' },\n match: [\n /[^a-zA-Z0-9._]|^/, // not part of an identifier, or start of document\n NUMBER_TYPES_RE\n ]\n }\n ]\n },\n\n // Operators/punctuation when they're not directly followed by numbers\n {\n // Relevance boost for the most common assignment form.\n scope: { 3: 'operator' },\n match: [\n IDENT_RE,\n /\\s+/,\n /<-/,\n /\\s+/\n ]\n },\n\n {\n scope: 'operator',\n relevance: 0,\n variants: [\n { match: OPERATORS_RE },\n { match: /%[^%]*%/ }\n ]\n },\n\n {\n scope: 'punctuation',\n relevance: 0,\n match: PUNCTUATION_RE\n },\n\n {\n // Escaped identifier\n begin: '`',\n end: '`',\n contains: [ { begin: /\\\\./ } ]\n }\n ]\n };\n}\n\nmodule.exports = r;\n","/*\nLanguage: ReasonML\nDescription: Reason lets you write simple, fast and quality type safe code while leveraging both the JavaScript & OCaml ecosystems.\nWebsite: https://reasonml.github.io\nAuthor: Gidi Meir Morris <oss@gidi.io>\nCategory: functional\n*/\nfunction reasonml(hljs) {\n function orReValues(ops) {\n return ops\n .map(function(op) {\n return op\n .split('')\n .map(function(char) {\n return '\\\\' + char;\n })\n .join('');\n })\n .join('|');\n }\n\n const RE_IDENT = '~?[a-z$_][0-9a-zA-Z$_]*';\n const RE_MODULE_IDENT = '`?[A-Z$_][0-9a-zA-Z$_]*';\n\n const RE_PARAM_TYPEPARAM = '\\'?[a-z$_][0-9a-z$_]*';\n const RE_PARAM_TYPE = '\\\\s*:\\\\s*[a-z$_][0-9a-z$_]*(\\\\(\\\\s*(' + RE_PARAM_TYPEPARAM + '\\\\s*(,' + RE_PARAM_TYPEPARAM + '\\\\s*)*)?\\\\))?';\n const RE_PARAM = RE_IDENT + '(' + RE_PARAM_TYPE + '){0,2}';\n const RE_OPERATOR = \"(\" + orReValues([\n '||',\n '++',\n '**',\n '+.',\n '*',\n '/',\n '*.',\n '/.',\n '...'\n ]) + \"|\\\\|>|&&|==|===)\";\n const RE_OPERATOR_SPACED = \"\\\\s+\" + RE_OPERATOR + \"\\\\s+\";\n\n const KEYWORDS = {\n keyword:\n 'and as asr assert begin class constraint do done downto else end exception external '\n + 'for fun function functor if in include inherit initializer '\n + 'land lazy let lor lsl lsr lxor match method mod module mutable new nonrec '\n + 'object of open or private rec sig struct then to try type val virtual when while with',\n built_in:\n 'array bool bytes char exn|5 float int int32 int64 list lazy_t|5 nativeint|5 ref string unit ',\n literal:\n 'true false'\n };\n\n const RE_NUMBER = '\\\\b(0[xX][a-fA-F0-9_]+[Lln]?|'\n + '0[oO][0-7_]+[Lln]?|'\n + '0[bB][01_]+[Lln]?|'\n + '[0-9][0-9_]*([Lln]|(\\\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)';\n\n const NUMBER_MODE = {\n className: 'number',\n relevance: 0,\n variants: [\n { begin: RE_NUMBER },\n { begin: '\\\\(-' + RE_NUMBER + '\\\\)' }\n ]\n };\n\n const OPERATOR_MODE = {\n className: 'operator',\n relevance: 0,\n begin: RE_OPERATOR\n };\n const LIST_CONTENTS_MODES = [\n {\n className: 'identifier',\n relevance: 0,\n begin: RE_IDENT\n },\n OPERATOR_MODE,\n NUMBER_MODE\n ];\n\n const MODULE_ACCESS_CONTENTS = [\n hljs.QUOTE_STRING_MODE,\n OPERATOR_MODE,\n {\n className: 'module',\n begin: \"\\\\b\" + RE_MODULE_IDENT,\n returnBegin: true,\n relevance: 0,\n end: \"\\.\",\n contains: [\n {\n className: 'identifier',\n begin: RE_MODULE_IDENT,\n relevance: 0\n }\n ]\n }\n ];\n\n const PARAMS_CONTENTS = [\n {\n className: 'module',\n begin: \"\\\\b\" + RE_MODULE_IDENT,\n returnBegin: true,\n end: \"\\.\",\n relevance: 0,\n contains: [\n {\n className: 'identifier',\n begin: RE_MODULE_IDENT,\n relevance: 0\n }\n ]\n }\n ];\n\n const PARAMS_MODE = {\n begin: RE_IDENT,\n end: '(,|\\\\n|\\\\))',\n relevance: 0,\n contains: [\n OPERATOR_MODE,\n {\n className: 'typing',\n begin: ':',\n end: '(,|\\\\n)',\n returnBegin: true,\n relevance: 0,\n contains: PARAMS_CONTENTS\n }\n ]\n };\n\n const FUNCTION_BLOCK_MODE = {\n className: 'function',\n relevance: 0,\n keywords: KEYWORDS,\n variants: [\n {\n begin: '\\\\s(\\\\(\\\\.?.*?\\\\)|' + RE_IDENT + ')\\\\s*=>',\n end: '\\\\s*=>',\n returnBegin: true,\n relevance: 0,\n contains: [\n {\n className: 'params',\n variants: [\n { begin: RE_IDENT },\n { begin: RE_PARAM },\n { begin: /\\(\\s*\\)/ }\n ]\n }\n ]\n },\n {\n begin: '\\\\s\\\\(\\\\.?[^;\\\\|]*\\\\)\\\\s*=>',\n end: '\\\\s=>',\n returnBegin: true,\n relevance: 0,\n contains: [\n {\n className: 'params',\n relevance: 0,\n variants: [ PARAMS_MODE ]\n }\n ]\n },\n { begin: '\\\\(\\\\.\\\\s' + RE_IDENT + '\\\\)\\\\s*=>' }\n ]\n };\n MODULE_ACCESS_CONTENTS.push(FUNCTION_BLOCK_MODE);\n\n const CONSTRUCTOR_MODE = {\n className: 'constructor',\n begin: RE_MODULE_IDENT + '\\\\(',\n end: '\\\\)',\n illegal: '\\\\n',\n keywords: KEYWORDS,\n contains: [\n hljs.QUOTE_STRING_MODE,\n OPERATOR_MODE,\n {\n className: 'params',\n begin: '\\\\b' + RE_IDENT\n }\n ]\n };\n\n const PATTERN_MATCH_BLOCK_MODE = {\n className: 'pattern-match',\n begin: '\\\\|',\n returnBegin: true,\n keywords: KEYWORDS,\n end: '=>',\n relevance: 0,\n contains: [\n CONSTRUCTOR_MODE,\n OPERATOR_MODE,\n {\n relevance: 0,\n className: 'constructor',\n begin: RE_MODULE_IDENT\n }\n ]\n };\n\n const MODULE_ACCESS_MODE = {\n className: 'module-access',\n keywords: KEYWORDS,\n returnBegin: true,\n variants: [\n { begin: \"\\\\b(\" + RE_MODULE_IDENT + \"\\\\.)+\" + RE_IDENT },\n {\n begin: \"\\\\b(\" + RE_MODULE_IDENT + \"\\\\.)+\\\\(\",\n end: \"\\\\)\",\n returnBegin: true,\n contains: [\n FUNCTION_BLOCK_MODE,\n {\n begin: '\\\\(',\n end: '\\\\)',\n relevance: 0,\n skip: true\n }\n ].concat(MODULE_ACCESS_CONTENTS)\n },\n {\n begin: \"\\\\b(\" + RE_MODULE_IDENT + \"\\\\.)+\\\\{\",\n end: /\\}/\n }\n ],\n contains: MODULE_ACCESS_CONTENTS\n };\n\n PARAMS_CONTENTS.push(MODULE_ACCESS_MODE);\n\n return {\n name: 'ReasonML',\n aliases: [ 're' ],\n keywords: KEYWORDS,\n illegal: '(:-|:=|\\\\$\\\\{|\\\\+=)',\n contains: [\n hljs.COMMENT('/\\\\*', '\\\\*/', { illegal: '^(#,\\\\/\\\\/)' }),\n {\n className: 'character',\n begin: '\\'(\\\\\\\\[^\\']+|[^\\'])\\'',\n illegal: '\\\\n',\n relevance: 0\n },\n hljs.QUOTE_STRING_MODE,\n {\n className: 'literal',\n begin: '\\\\(\\\\)',\n relevance: 0\n },\n {\n className: 'literal',\n begin: '\\\\[\\\\|',\n end: '\\\\|\\\\]',\n relevance: 0,\n contains: LIST_CONTENTS_MODES\n },\n {\n className: 'literal',\n begin: '\\\\[',\n end: '\\\\]',\n relevance: 0,\n contains: LIST_CONTENTS_MODES\n },\n CONSTRUCTOR_MODE,\n {\n className: 'operator',\n begin: RE_OPERATOR_SPACED,\n illegal: '-->',\n relevance: 0\n },\n NUMBER_MODE,\n hljs.C_LINE_COMMENT_MODE,\n PATTERN_MATCH_BLOCK_MODE,\n FUNCTION_BLOCK_MODE,\n {\n className: 'module-def',\n begin: \"\\\\bmodule\\\\s+\" + RE_IDENT + \"\\\\s+\" + RE_MODULE_IDENT + \"\\\\s+=\\\\s+\\\\{\",\n end: /\\}/,\n returnBegin: true,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n {\n className: 'module',\n relevance: 0,\n begin: RE_MODULE_IDENT\n },\n {\n begin: /\\{/,\n end: /\\}/,\n relevance: 0,\n skip: true\n }\n ].concat(MODULE_ACCESS_CONTENTS)\n },\n MODULE_ACCESS_MODE\n ]\n };\n}\n\nmodule.exports = reasonml;\n","/*\nLanguage: RenderMan RIB\nAuthor: Konstantin Evdokimenko <qewerty@gmail.com>\nContributors: Shuen-Huei Guan <drake.guan@gmail.com>\nWebsite: https://renderman.pixar.com/resources/RenderMan_20/ribBinding.html\nCategory: graphics\n*/\n\nfunction rib(hljs) {\n return {\n name: 'RenderMan RIB',\n keywords:\n 'ArchiveRecord AreaLightSource Atmosphere Attribute AttributeBegin AttributeEnd Basis '\n + 'Begin Blobby Bound Clipping ClippingPlane Color ColorSamples ConcatTransform Cone '\n + 'CoordinateSystem CoordSysTransform CropWindow Curves Cylinder DepthOfField Detail '\n + 'DetailRange Disk Displacement Display End ErrorHandler Exposure Exterior Format '\n + 'FrameAspectRatio FrameBegin FrameEnd GeneralPolygon GeometricApproximation Geometry '\n + 'Hider Hyperboloid Identity Illuminate Imager Interior LightSource '\n + 'MakeCubeFaceEnvironment MakeLatLongEnvironment MakeShadow MakeTexture Matte '\n + 'MotionBegin MotionEnd NuPatch ObjectBegin ObjectEnd ObjectInstance Opacity Option '\n + 'Orientation Paraboloid Patch PatchMesh Perspective PixelFilter PixelSamples '\n + 'PixelVariance Points PointsGeneralPolygons PointsPolygons Polygon Procedural Projection '\n + 'Quantize ReadArchive RelativeDetail ReverseOrientation Rotate Scale ScreenWindow '\n + 'ShadingInterpolation ShadingRate Shutter Sides Skew SolidBegin SolidEnd Sphere '\n + 'SubdivisionMesh Surface TextureCoordinates Torus Transform TransformBegin TransformEnd '\n + 'TransformPoints Translate TrimCurve WorldBegin WorldEnd',\n illegal: '</',\n contains: [\n hljs.HASH_COMMENT_MODE,\n hljs.C_NUMBER_MODE,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n };\n}\n\nmodule.exports = rib;\n","/*\nLanguage: Roboconf\nAuthor: Vincent Zurczak <vzurczak@linagora.com>\nDescription: Syntax highlighting for Roboconf's DSL\nWebsite: http://roboconf.net\nCategory: config\n*/\n\nfunction roboconf(hljs) {\n const IDENTIFIER = '[a-zA-Z-_][^\\\\n{]+\\\\{';\n\n const PROPERTY = {\n className: 'attribute',\n begin: /[a-zA-Z-_]+/,\n end: /\\s*:/,\n excludeEnd: true,\n starts: {\n end: ';',\n relevance: 0,\n contains: [\n {\n className: 'variable',\n begin: /\\.[a-zA-Z-_]+/\n },\n {\n className: 'keyword',\n begin: /\\(optional\\)/\n }\n ]\n }\n };\n\n return {\n name: 'Roboconf',\n aliases: [\n 'graph',\n 'instances'\n ],\n case_insensitive: true,\n keywords: 'import',\n contains: [\n // Facet sections\n {\n begin: '^facet ' + IDENTIFIER,\n end: /\\}/,\n keywords: 'facet',\n contains: [\n PROPERTY,\n hljs.HASH_COMMENT_MODE\n ]\n },\n\n // Instance sections\n {\n begin: '^\\\\s*instance of ' + IDENTIFIER,\n end: /\\}/,\n keywords: 'name count channels instance-data instance-state instance of',\n illegal: /\\S/,\n contains: [\n 'self',\n PROPERTY,\n hljs.HASH_COMMENT_MODE\n ]\n },\n\n // Component sections\n {\n begin: '^' + IDENTIFIER,\n end: /\\}/,\n contains: [\n PROPERTY,\n hljs.HASH_COMMENT_MODE\n ]\n },\n\n // Comments\n hljs.HASH_COMMENT_MODE\n ]\n };\n}\n\nmodule.exports = roboconf;\n","/*\nLanguage: Microtik RouterOS script\nAuthor: Ivan Dementev <ivan_div@mail.ru>\nDescription: Scripting host provides a way to automate some router maintenance tasks by means of executing user-defined scripts bounded to some event occurrence\nWebsite: https://wiki.mikrotik.com/wiki/Manual:Scripting\n*/\n\n// Colors from RouterOS terminal:\n// green - #0E9A00\n// teal - #0C9A9A\n// purple - #99069A\n// light-brown - #9A9900\n\nfunction routeros(hljs) {\n const STATEMENTS = 'foreach do while for if from to step else on-error and or not in';\n\n // Global commands: Every global command should start with \":\" token, otherwise it will be treated as variable.\n const GLOBAL_COMMANDS = 'global local beep delay put len typeof pick log time set find environment terminal error execute parse resolve toarray tobool toid toip toip6 tonum tostr totime';\n\n // Common commands: Following commands available from most sub-menus:\n const COMMON_COMMANDS = 'add remove enable disable set get print export edit find run debug error info warning';\n\n const LITERALS = 'true false yes no nothing nil null';\n\n const OBJECTS = 'traffic-flow traffic-generator firewall scheduler aaa accounting address-list address align area bandwidth-server bfd bgp bridge client clock community config connection console customer default dhcp-client dhcp-server discovery dns e-mail ethernet filter firmware gps graphing group hardware health hotspot identity igmp-proxy incoming instance interface ip ipsec ipv6 irq l2tp-server lcd ldp logging mac-server mac-winbox mangle manual mirror mme mpls nat nd neighbor network note ntp ospf ospf-v3 ovpn-server page peer pim ping policy pool port ppp pppoe-client pptp-server prefix profile proposal proxy queue radius resource rip ripng route routing screen script security-profiles server service service-port settings shares smb sms sniffer snmp snooper socks sstp-server system tool tracking type upgrade upnp user-manager users user vlan secret vrrp watchdog web-access wireless pptp pppoe lan wan layer7-protocol lease simple raw';\n\n const VAR = {\n className: 'variable',\n variants: [\n { begin: /\\$[\\w\\d#@][\\w\\d_]*/ },\n { begin: /\\$\\{(.*?)\\}/ }\n ]\n };\n\n const QUOTE_STRING = {\n className: 'string',\n begin: /\"/,\n end: /\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n VAR,\n {\n className: 'variable',\n begin: /\\$\\(/,\n end: /\\)/,\n contains: [ hljs.BACKSLASH_ESCAPE ]\n }\n ]\n };\n\n const APOS_STRING = {\n className: 'string',\n begin: /'/,\n end: /'/\n };\n\n return {\n name: 'Microtik RouterOS script',\n aliases: [ 'mikrotik' ],\n case_insensitive: true,\n keywords: {\n $pattern: /:?[\\w-]+/,\n literal: LITERALS,\n keyword: STATEMENTS + ' :' + STATEMENTS.split(' ').join(' :') + ' :' + GLOBAL_COMMANDS.split(' ').join(' :')\n },\n contains: [\n { // illegal syntax\n variants: [\n { // -- comment\n begin: /\\/\\*/,\n end: /\\*\\//\n },\n { // Stan comment\n begin: /\\/\\//,\n end: /$/\n },\n { // HTML tags\n begin: /<\\//,\n end: />/\n }\n ],\n illegal: /./\n },\n hljs.COMMENT('^#', '$'),\n QUOTE_STRING,\n APOS_STRING,\n VAR,\n // attribute=value\n {\n // > is to avoid matches with => in other grammars\n begin: /[\\w-]+=([^\\s{}[\\]()>]+)/,\n relevance: 0,\n returnBegin: true,\n contains: [\n {\n className: 'attribute',\n begin: /[^=]+/\n },\n {\n begin: /=/,\n endsWithParent: true,\n relevance: 0,\n contains: [\n QUOTE_STRING,\n APOS_STRING,\n VAR,\n {\n className: 'literal',\n begin: '\\\\b(' + LITERALS.split(' ').join('|') + ')\\\\b'\n },\n {\n // Do not format unclassified values. Needed to exclude highlighting of values as built_in.\n begin: /(\"[^\"]*\"|[^\\s{}[\\]]+)/ }\n /*\n {\n // IPv4 addresses and subnets\n className: 'number',\n variants: [\n {begin: IPADDR_wBITMASK+'(,'+IPADDR_wBITMASK+')*'}, //192.168.0.0/24,1.2.3.0/24\n {begin: IPADDR+'-'+IPADDR}, // 192.168.0.1-192.168.0.3\n {begin: IPADDR+'(,'+IPADDR+')*'}, // 192.168.0.1,192.168.0.34,192.168.24.1,192.168.0.1\n ]\n },\n {\n // MAC addresses and DHCP Client IDs\n className: 'number',\n begin: /\\b(1:)?([0-9A-Fa-f]{1,2}[:-]){5}([0-9A-Fa-f]){1,2}\\b/,\n },\n */\n ]\n }\n ]\n },\n {\n // HEX values\n className: 'number',\n begin: /\\*[0-9a-fA-F]+/\n },\n {\n begin: '\\\\b(' + COMMON_COMMANDS.split(' ').join('|') + ')([\\\\s[(\\\\]|])',\n returnBegin: true,\n contains: [\n {\n className: 'built_in', // 'function',\n begin: /\\w+/\n }\n ]\n },\n {\n className: 'built_in',\n variants: [\n { begin: '(\\\\.\\\\./|/|\\\\s)((' + OBJECTS.split(' ').join('|') + ');?\\\\s)+' },\n {\n begin: /\\.\\./,\n relevance: 0\n }\n ]\n }\n ]\n };\n}\n\nmodule.exports = routeros;\n","/*\nLanguage: RenderMan RSL\nAuthor: Konstantin Evdokimenko <qewerty@gmail.com>\nContributors: Shuen-Huei Guan <drake.guan@gmail.com>\nWebsite: https://renderman.pixar.com/resources/RenderMan_20/shadingLanguage.html\nCategory: graphics\n*/\n\nfunction rsl(hljs) {\n const BUILT_INS = [\n \"abs\",\n \"acos\",\n \"ambient\",\n \"area\",\n \"asin\",\n \"atan\",\n \"atmosphere\",\n \"attribute\",\n \"calculatenormal\",\n \"ceil\",\n \"cellnoise\",\n \"clamp\",\n \"comp\",\n \"concat\",\n \"cos\",\n \"degrees\",\n \"depth\",\n \"Deriv\",\n \"diffuse\",\n \"distance\",\n \"Du\",\n \"Dv\",\n \"environment\",\n \"exp\",\n \"faceforward\",\n \"filterstep\",\n \"floor\",\n \"format\",\n \"fresnel\",\n \"incident\",\n \"length\",\n \"lightsource\",\n \"log\",\n \"match\",\n \"max\",\n \"min\",\n \"mod\",\n \"noise\",\n \"normalize\",\n \"ntransform\",\n \"opposite\",\n \"option\",\n \"phong\",\n \"pnoise\",\n \"pow\",\n \"printf\",\n \"ptlined\",\n \"radians\",\n \"random\",\n \"reflect\",\n \"refract\",\n \"renderinfo\",\n \"round\",\n \"setcomp\",\n \"setxcomp\",\n \"setycomp\",\n \"setzcomp\",\n \"shadow\",\n \"sign\",\n \"sin\",\n \"smoothstep\",\n \"specular\",\n \"specularbrdf\",\n \"spline\",\n \"sqrt\",\n \"step\",\n \"tan\",\n \"texture\",\n \"textureinfo\",\n \"trace\",\n \"transform\",\n \"vtransform\",\n \"xcomp\",\n \"ycomp\",\n \"zcomp\"\n ];\n\n const TYPES = [\n \"matrix\",\n \"float\",\n \"color\",\n \"point\",\n \"normal\",\n \"vector\"\n ];\n\n const KEYWORDS = [\n \"while\",\n \"for\",\n \"if\",\n \"do\",\n \"return\",\n \"else\",\n \"break\",\n \"extern\",\n \"continue\"\n ];\n\n const CLASS_DEFINITION = {\n match: [\n /(surface|displacement|light|volume|imager)/,\n /\\s+/,\n hljs.IDENT_RE,\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\",\n }\n };\n\n return {\n name: 'RenderMan RSL',\n keywords: {\n keyword: KEYWORDS,\n built_in: BUILT_INS,\n type: TYPES\n },\n illegal: '</',\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.QUOTE_STRING_MODE,\n hljs.APOS_STRING_MODE,\n hljs.C_NUMBER_MODE,\n {\n className: 'meta',\n begin: '#',\n end: '$'\n },\n CLASS_DEFINITION,\n {\n beginKeywords: 'illuminate illuminance gather',\n end: '\\\\('\n }\n ]\n };\n}\n\nmodule.exports = rsl;\n","/*\nLanguage: Ruby\nDescription: Ruby is a dynamic, open source programming language with a focus on simplicity and productivity.\nWebsite: https://www.ruby-lang.org/\nAuthor: Anton Kovalyov <anton@kovalyov.net>\nContributors: Peter Leonov <gojpeg@yandex.ru>, Vasily Polovnyov <vast@whiteants.net>, Loren Segal <lsegal@soen.ca>, Pascal Hurni <phi@ruby-reactive.org>, Cedric Sohrauer <sohrauer@googlemail.com>\nCategory: common\n*/\n\nfunction ruby(hljs) {\n const regex = hljs.regex;\n const RUBY_METHOD_RE = '([a-zA-Z_]\\\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\\\*\\\\*|[-/+%^&*~`|]|\\\\[\\\\]=?)';\n // TODO: move concepts like CAMEL_CASE into `modes.js`\n const CLASS_NAME_RE = regex.either(\n /\\b([A-Z]+[a-z0-9]+)+/,\n // ends in caps\n /\\b([A-Z]+[a-z0-9]+)+[A-Z]+/,\n )\n ;\n const CLASS_NAME_WITH_NAMESPACE_RE = regex.concat(CLASS_NAME_RE, /(::\\w+)*/);\n const RUBY_KEYWORDS = {\n \"variable.constant\": [\n \"__FILE__\",\n \"__LINE__\"\n ],\n \"variable.language\": [\n \"self\",\n \"super\",\n ],\n keyword: [\n \"alias\",\n \"and\",\n \"attr_accessor\",\n \"attr_reader\",\n \"attr_writer\",\n \"begin\",\n \"BEGIN\",\n \"break\",\n \"case\",\n \"class\",\n \"defined\",\n \"do\",\n \"else\",\n \"elsif\",\n \"end\",\n \"END\",\n \"ensure\",\n \"for\",\n \"if\",\n \"in\",\n \"include\",\n \"module\",\n \"next\",\n \"not\",\n \"or\",\n \"redo\",\n \"require\",\n \"rescue\",\n \"retry\",\n \"return\",\n \"then\",\n \"undef\",\n \"unless\",\n \"until\",\n \"when\",\n \"while\",\n \"yield\",\n ],\n built_in: [\n \"proc\",\n \"lambda\"\n ],\n literal: [\n \"true\",\n \"false\",\n \"nil\"\n ]\n };\n const YARDOCTAG = {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n };\n const IRB_OBJECT = {\n begin: '#<',\n end: '>'\n };\n const COMMENT_MODES = [\n hljs.COMMENT(\n '#',\n '$',\n { contains: [ YARDOCTAG ] }\n ),\n hljs.COMMENT(\n '^=begin',\n '^=end',\n {\n contains: [ YARDOCTAG ],\n relevance: 10\n }\n ),\n hljs.COMMENT('^__END__', hljs.MATCH_NOTHING_RE)\n ];\n const SUBST = {\n className: 'subst',\n begin: /#\\{/,\n end: /\\}/,\n keywords: RUBY_KEYWORDS\n };\n const STRING = {\n className: 'string',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n variants: [\n {\n begin: /'/,\n end: /'/\n },\n {\n begin: /\"/,\n end: /\"/\n },\n {\n begin: /`/,\n end: /`/\n },\n {\n begin: /%[qQwWx]?\\(/,\n end: /\\)/\n },\n {\n begin: /%[qQwWx]?\\[/,\n end: /\\]/\n },\n {\n begin: /%[qQwWx]?\\{/,\n end: /\\}/\n },\n {\n begin: /%[qQwWx]?</,\n end: />/\n },\n {\n begin: /%[qQwWx]?\\//,\n end: /\\//\n },\n {\n begin: /%[qQwWx]?%/,\n end: /%/\n },\n {\n begin: /%[qQwWx]?-/,\n end: /-/\n },\n {\n begin: /%[qQwWx]?\\|/,\n end: /\\|/\n },\n // in the following expressions, \\B in the beginning suppresses recognition of ?-sequences\n // where ? is the last character of a preceding identifier, as in: `func?4`\n { begin: /\\B\\?(\\\\\\d{1,3})/ },\n { begin: /\\B\\?(\\\\x[A-Fa-f0-9]{1,2})/ },\n { begin: /\\B\\?(\\\\u\\{?[A-Fa-f0-9]{1,6}\\}?)/ },\n { begin: /\\B\\?(\\\\M-\\\\C-|\\\\M-\\\\c|\\\\c\\\\M-|\\\\M-|\\\\C-\\\\M-)[\\x20-\\x7e]/ },\n { begin: /\\B\\?\\\\(c|C-)[\\x20-\\x7e]/ },\n { begin: /\\B\\?\\\\?\\S/ },\n // heredocs\n {\n // this guard makes sure that we have an entire heredoc and not a false\n // positive (auto-detect, etc.)\n begin: regex.concat(\n /<<[-~]?'?/,\n regex.lookahead(/(\\w+)(?=\\W)[^\\n]*\\n(?:[^\\n]*\\n)*?\\s*\\1\\b/)\n ),\n contains: [\n hljs.END_SAME_AS_BEGIN({\n begin: /(\\w+)/,\n end: /(\\w+)/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ]\n })\n ]\n }\n ]\n };\n\n // Ruby syntax is underdocumented, but this grammar seems to be accurate\n // as of version 2.7.2 (confirmed with (irb and `Ripper.sexp(...)`)\n // https://docs.ruby-lang.org/en/2.7.0/doc/syntax/literals_rdoc.html#label-Numbers\n const decimal = '[1-9](_?[0-9])*|0';\n const digits = '[0-9](_?[0-9])*';\n const NUMBER = {\n className: 'number',\n relevance: 0,\n variants: [\n // decimal integer/float, optionally exponential or rational, optionally imaginary\n { begin: `\\\\b(${decimal})(\\\\.(${digits}))?([eE][+-]?(${digits})|r)?i?\\\\b` },\n\n // explicit decimal/binary/octal/hexadecimal integer,\n // optionally rational and/or imaginary\n { begin: \"\\\\b0[dD][0-9](_?[0-9])*r?i?\\\\b\" },\n { begin: \"\\\\b0[bB][0-1](_?[0-1])*r?i?\\\\b\" },\n { begin: \"\\\\b0[oO][0-7](_?[0-7])*r?i?\\\\b\" },\n { begin: \"\\\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\\\b\" },\n\n // 0-prefixed implicit octal integer, optionally rational and/or imaginary\n { begin: \"\\\\b0(_?[0-7])+r?i?\\\\b\" }\n ]\n };\n\n const PARAMS = {\n variants: [\n {\n match: /\\(\\)/,\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /(?=\\))/,\n excludeBegin: true,\n endsParent: true,\n keywords: RUBY_KEYWORDS,\n }\n ]\n };\n\n const CLASS_DEFINITION = {\n variants: [\n {\n match: [\n /class\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE,\n /\\s+<\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE\n ]\n },\n {\n match: [\n /class\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE\n ]\n }\n ],\n scope: {\n 2: \"title.class\",\n 4: \"title.class.inherited\"\n },\n keywords: RUBY_KEYWORDS\n };\n\n const UPPER_CASE_CONSTANT = {\n relevance: 0,\n match: /\\b[A-Z][A-Z_0-9]+\\b/,\n className: \"variable.constant\"\n };\n\n const METHOD_DEFINITION = {\n match: [\n /def/, /\\s+/,\n RUBY_METHOD_RE\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n PARAMS\n ]\n };\n\n const OBJECT_CREATION = {\n relevance: 0,\n match: [\n CLASS_NAME_WITH_NAMESPACE_RE,\n /\\.new[ (]/\n ],\n scope: {\n 1: \"title.class\"\n }\n };\n\n const RUBY_DEFAULT_CONTAINS = [\n STRING,\n CLASS_DEFINITION,\n OBJECT_CREATION,\n UPPER_CASE_CONSTANT,\n METHOD_DEFINITION,\n {\n // swallow namespace qualifiers before symbols\n begin: hljs.IDENT_RE + '::' },\n {\n className: 'symbol',\n begin: hljs.UNDERSCORE_IDENT_RE + '(!|\\\\?)?:',\n relevance: 0\n },\n {\n className: 'symbol',\n begin: ':(?!\\\\s)',\n contains: [\n STRING,\n { begin: RUBY_METHOD_RE }\n ],\n relevance: 0\n },\n NUMBER,\n {\n // negative-look forward attempts to prevent false matches like:\n // @ident@ or $ident$ that might indicate this is not ruby at all\n className: \"variable\",\n begin: '(\\\\$\\\\W)|((\\\\$|@@?)(\\\\w+))(?=[^@$?])' + `(?![A-Za-z])(?![@$?'])`\n },\n {\n className: 'params',\n begin: /\\|/,\n end: /\\|/,\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0, // this could be a lot of things (in other languages) other than params\n keywords: RUBY_KEYWORDS\n },\n { // regexp container\n begin: '(' + hljs.RE_STARTERS_RE + '|unless)\\\\s*',\n keywords: 'unless',\n contains: [\n {\n className: 'regexp',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n illegal: /\\n/,\n variants: [\n {\n begin: '/',\n end: '/[a-z]*'\n },\n {\n begin: /%r\\{/,\n end: /\\}[a-z]*/\n },\n {\n begin: '%r\\\\(',\n end: '\\\\)[a-z]*'\n },\n {\n begin: '%r!',\n end: '![a-z]*'\n },\n {\n begin: '%r\\\\[',\n end: '\\\\][a-z]*'\n }\n ]\n }\n ].concat(IRB_OBJECT, COMMENT_MODES),\n relevance: 0\n }\n ].concat(IRB_OBJECT, COMMENT_MODES);\n\n SUBST.contains = RUBY_DEFAULT_CONTAINS;\n PARAMS.contains = RUBY_DEFAULT_CONTAINS;\n\n // >>\n // ?>\n const SIMPLE_PROMPT = \"[>?]>\";\n // irb(main):001:0>\n const DEFAULT_PROMPT = \"[\\\\w#]+\\\\(\\\\w+\\\\):\\\\d+:\\\\d+[>*]\";\n const RVM_PROMPT = \"(\\\\w+-)?\\\\d+\\\\.\\\\d+\\\\.\\\\d+(p\\\\d+)?[^\\\\d][^>]+>\";\n\n const IRB_DEFAULT = [\n {\n begin: /^\\s*=>/,\n starts: {\n end: '$',\n contains: RUBY_DEFAULT_CONTAINS\n }\n },\n {\n className: 'meta.prompt',\n begin: '^(' + SIMPLE_PROMPT + \"|\" + DEFAULT_PROMPT + '|' + RVM_PROMPT + ')(?=[ ])',\n starts: {\n end: '$',\n keywords: RUBY_KEYWORDS,\n contains: RUBY_DEFAULT_CONTAINS\n }\n }\n ];\n\n COMMENT_MODES.unshift(IRB_OBJECT);\n\n return {\n name: 'Ruby',\n aliases: [\n 'rb',\n 'gemspec',\n 'podspec',\n 'thor',\n 'irb'\n ],\n keywords: RUBY_KEYWORDS,\n illegal: /\\/\\*/,\n contains: [ hljs.SHEBANG({ binary: \"ruby\" }) ]\n .concat(IRB_DEFAULT)\n .concat(COMMENT_MODES)\n .concat(RUBY_DEFAULT_CONTAINS)\n };\n}\n\nmodule.exports = ruby;\n","/*\nLanguage: Oracle Rules Language\nAuthor: Jason Jacobson <jason.a.jacobson@gmail.com>\nDescription: The Oracle Utilities Rules Language is used to program the Oracle Utilities Applications acquired from LODESTAR Corporation. The products include Billing Component, LPSS, Pricing Component etc. through version 1.6.1.\nWebsite: https://docs.oracle.com/cd/E17904_01/dev.1111/e10227/rlref.htm\nCategory: enterprise\n*/\n\nfunction ruleslanguage(hljs) {\n return {\n name: 'Oracle Rules Language',\n keywords: {\n keyword:\n 'BILL_PERIOD BILL_START BILL_STOP RS_EFFECTIVE_START RS_EFFECTIVE_STOP RS_JURIS_CODE RS_OPCO_CODE '\n + 'INTDADDATTRIBUTE|5 INTDADDVMSG|5 INTDBLOCKOP|5 INTDBLOCKOPNA|5 INTDCLOSE|5 INTDCOUNT|5 '\n + 'INTDCOUNTSTATUSCODE|5 INTDCREATEMASK|5 INTDCREATEDAYMASK|5 INTDCREATEFACTORMASK|5 '\n + 'INTDCREATEHANDLE|5 INTDCREATEOVERRIDEDAYMASK|5 INTDCREATEOVERRIDEMASK|5 '\n + 'INTDCREATESTATUSCODEMASK|5 INTDCREATETOUPERIOD|5 INTDDELETE|5 INTDDIPTEST|5 INTDEXPORT|5 '\n + 'INTDGETERRORCODE|5 INTDGETERRORMESSAGE|5 INTDISEQUAL|5 INTDJOIN|5 INTDLOAD|5 INTDLOADACTUALCUT|5 '\n + 'INTDLOADDATES|5 INTDLOADHIST|5 INTDLOADLIST|5 INTDLOADLISTDATES|5 INTDLOADLISTENERGY|5 '\n + 'INTDLOADLISTHIST|5 INTDLOADRELATEDCHANNEL|5 INTDLOADSP|5 INTDLOADSTAGING|5 INTDLOADUOM|5 '\n + 'INTDLOADUOMDATES|5 INTDLOADUOMHIST|5 INTDLOADVERSION|5 INTDOPEN|5 INTDREADFIRST|5 INTDREADNEXT|5 '\n + 'INTDRECCOUNT|5 INTDRELEASE|5 INTDREPLACE|5 INTDROLLAVG|5 INTDROLLPEAK|5 INTDSCALAROP|5 INTDSCALE|5 '\n + 'INTDSETATTRIBUTE|5 INTDSETDSTPARTICIPANT|5 INTDSETSTRING|5 INTDSETVALUE|5 INTDSETVALUESTATUS|5 '\n + 'INTDSHIFTSTARTTIME|5 INTDSMOOTH|5 INTDSORT|5 INTDSPIKETEST|5 INTDSUBSET|5 INTDTOU|5 '\n + 'INTDTOURELEASE|5 INTDTOUVALUE|5 INTDUPDATESTATS|5 INTDVALUE|5 STDEV INTDDELETEEX|5 '\n + 'INTDLOADEXACTUAL|5 INTDLOADEXCUT|5 INTDLOADEXDATES|5 INTDLOADEX|5 INTDLOADEXRELATEDCHANNEL|5 '\n + 'INTDSAVEEX|5 MVLOAD|5 MVLOADACCT|5 MVLOADACCTDATES|5 MVLOADACCTHIST|5 MVLOADDATES|5 MVLOADHIST|5 '\n + 'MVLOADLIST|5 MVLOADLISTDATES|5 MVLOADLISTHIST|5 IF FOR NEXT DONE SELECT END CALL ABORT CLEAR CHANNEL FACTOR LIST NUMBER '\n + 'OVERRIDE SET WEEK DISTRIBUTIONNODE ELSE WHEN THEN OTHERWISE IENUM CSV INCLUDE LEAVE RIDER SAVE DELETE '\n + 'NOVALUE SECTION WARN SAVE_UPDATE DETERMINANT LABEL REPORT REVENUE EACH '\n + 'IN FROM TOTAL CHARGE BLOCK AND OR CSV_FILE RATE_CODE AUXILIARY_DEMAND '\n + 'UIDACCOUNT RS BILL_PERIOD_SELECT HOURS_PER_MONTH INTD_ERROR_STOP SEASON_SCHEDULE_NAME '\n + 'ACCOUNTFACTOR ARRAYUPPERBOUND CALLSTOREDPROC GETADOCONNECTION GETCONNECT GETDATASOURCE '\n + 'GETQUALIFIER GETUSERID HASVALUE LISTCOUNT LISTOP LISTUPDATE LISTVALUE PRORATEFACTOR RSPRORATE '\n + 'SETBINPATH SETDBMONITOR WQ_OPEN BILLINGHOURS DATE DATEFROMFLOAT DATETIMEFROMSTRING '\n + 'DATETIMETOSTRING DATETOFLOAT DAY DAYDIFF DAYNAME DBDATETIME HOUR MINUTE MONTH MONTHDIFF '\n + 'MONTHHOURS MONTHNAME ROUNDDATE SAMEWEEKDAYLASTYEAR SECOND WEEKDAY WEEKDIFF YEAR YEARDAY '\n + 'YEARSTR COMPSUM HISTCOUNT HISTMAX HISTMIN HISTMINNZ HISTVALUE MAXNRANGE MAXRANGE MINRANGE '\n + 'COMPIKVA COMPKVA COMPKVARFROMKQKW COMPLF IDATTR FLAG LF2KW LF2KWH MAXKW POWERFACTOR '\n + 'READING2USAGE AVGSEASON MAXSEASON MONTHLYMERGE SEASONVALUE SUMSEASON ACCTREADDATES '\n + 'ACCTTABLELOAD CONFIGADD CONFIGGET CREATEOBJECT CREATEREPORT EMAILCLIENT EXPBLKMDMUSAGE '\n + 'EXPMDMUSAGE EXPORT_USAGE FACTORINEFFECT GETUSERSPECIFIEDSTOP INEFFECT ISHOLIDAY RUNRATE '\n + 'SAVE_PROFILE SETREPORTTITLE USEREXIT WATFORRUNRATE TO TABLE ACOS ASIN ATAN ATAN2 BITAND CEIL '\n + 'COS COSECANT COSH COTANGENT DIVQUOT DIVREM EXP FABS FLOOR FMOD FREPM FREXPN LOG LOG10 MAX MAXN '\n + 'MIN MINNZ MODF POW ROUND ROUND2VALUE ROUNDINT SECANT SIN SINH SQROOT TAN TANH FLOAT2STRING '\n + 'FLOAT2STRINGNC INSTR LEFT LEN LTRIM MID RIGHT RTRIM STRING STRINGNC TOLOWER TOUPPER TRIM '\n + 'NUMDAYS READ_DATE STAGING',\n built_in:\n 'IDENTIFIER OPTIONS XML_ELEMENT XML_OP XML_ELEMENT_OF DOMDOCCREATE DOMDOCLOADFILE DOMDOCLOADXML '\n + 'DOMDOCSAVEFILE DOMDOCGETROOT DOMDOCADDPI DOMNODEGETNAME DOMNODEGETTYPE DOMNODEGETVALUE DOMNODEGETCHILDCT '\n + 'DOMNODEGETFIRSTCHILD DOMNODEGETSIBLING DOMNODECREATECHILDELEMENT DOMNODESETATTRIBUTE '\n + 'DOMNODEGETCHILDELEMENTCT DOMNODEGETFIRSTCHILDELEMENT DOMNODEGETSIBLINGELEMENT DOMNODEGETATTRIBUTECT '\n + 'DOMNODEGETATTRIBUTEI DOMNODEGETATTRIBUTEBYNAME DOMNODEGETBYNAME'\n },\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n hljs.C_NUMBER_MODE,\n {\n className: 'literal',\n variants: [\n { // looks like #-comment\n begin: '#\\\\s+',\n relevance: 0\n },\n { begin: '#[a-zA-Z .]+' }\n ]\n }\n ]\n };\n}\n\nmodule.exports = ruleslanguage;\n","/*\nLanguage: Rust\nAuthor: Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>\nContributors: Roman Shmatov <romanshmatov@gmail.com>, Kasper Andersen <kma_untrusted@protonmail.com>\nWebsite: https://www.rust-lang.org\nCategory: common, system\n*/\n\n/** @type LanguageFn */\nfunction rust(hljs) {\n const regex = hljs.regex;\n const FUNCTION_INVOKE = {\n className: \"title.function.invoke\",\n relevance: 0,\n begin: regex.concat(\n /\\b/,\n /(?!let\\b)/,\n hljs.IDENT_RE,\n regex.lookahead(/\\s*\\(/))\n };\n const NUMBER_SUFFIX = '([ui](8|16|32|64|128|size)|f(32|64))\\?';\n const KEYWORDS = [\n \"abstract\",\n \"as\",\n \"async\",\n \"await\",\n \"become\",\n \"box\",\n \"break\",\n \"const\",\n \"continue\",\n \"crate\",\n \"do\",\n \"dyn\",\n \"else\",\n \"enum\",\n \"extern\",\n \"false\",\n \"final\",\n \"fn\",\n \"for\",\n \"if\",\n \"impl\",\n \"in\",\n \"let\",\n \"loop\",\n \"macro\",\n \"match\",\n \"mod\",\n \"move\",\n \"mut\",\n \"override\",\n \"priv\",\n \"pub\",\n \"ref\",\n \"return\",\n \"self\",\n \"Self\",\n \"static\",\n \"struct\",\n \"super\",\n \"trait\",\n \"true\",\n \"try\",\n \"type\",\n \"typeof\",\n \"unsafe\",\n \"unsized\",\n \"use\",\n \"virtual\",\n \"where\",\n \"while\",\n \"yield\"\n ];\n const LITERALS = [\n \"true\",\n \"false\",\n \"Some\",\n \"None\",\n \"Ok\",\n \"Err\"\n ];\n const BUILTINS = [\n // functions\n 'drop ',\n // traits\n \"Copy\",\n \"Send\",\n \"Sized\",\n \"Sync\",\n \"Drop\",\n \"Fn\",\n \"FnMut\",\n \"FnOnce\",\n \"ToOwned\",\n \"Clone\",\n \"Debug\",\n \"PartialEq\",\n \"PartialOrd\",\n \"Eq\",\n \"Ord\",\n \"AsRef\",\n \"AsMut\",\n \"Into\",\n \"From\",\n \"Default\",\n \"Iterator\",\n \"Extend\",\n \"IntoIterator\",\n \"DoubleEndedIterator\",\n \"ExactSizeIterator\",\n \"SliceConcatExt\",\n \"ToString\",\n // macros\n \"assert!\",\n \"assert_eq!\",\n \"bitflags!\",\n \"bytes!\",\n \"cfg!\",\n \"col!\",\n \"concat!\",\n \"concat_idents!\",\n \"debug_assert!\",\n \"debug_assert_eq!\",\n \"env!\",\n \"panic!\",\n \"file!\",\n \"format!\",\n \"format_args!\",\n \"include_bin!\",\n \"include_str!\",\n \"line!\",\n \"local_data_key!\",\n \"module_path!\",\n \"option_env!\",\n \"print!\",\n \"println!\",\n \"select!\",\n \"stringify!\",\n \"try!\",\n \"unimplemented!\",\n \"unreachable!\",\n \"vec!\",\n \"write!\",\n \"writeln!\",\n \"macro_rules!\",\n \"assert_ne!\",\n \"debug_assert_ne!\"\n ];\n const TYPES = [\n \"i8\",\n \"i16\",\n \"i32\",\n \"i64\",\n \"i128\",\n \"isize\",\n \"u8\",\n \"u16\",\n \"u32\",\n \"u64\",\n \"u128\",\n \"usize\",\n \"f32\",\n \"f64\",\n \"str\",\n \"char\",\n \"bool\",\n \"Box\",\n \"Option\",\n \"Result\",\n \"String\",\n \"Vec\"\n ];\n return {\n name: 'Rust',\n aliases: [ 'rs' ],\n keywords: {\n $pattern: hljs.IDENT_RE + '!?',\n type: TYPES,\n keyword: KEYWORDS,\n literal: LITERALS,\n built_in: BUILTINS\n },\n illegal: '</',\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.COMMENT('/\\\\*', '\\\\*/', { contains: [ 'self' ] }),\n hljs.inherit(hljs.QUOTE_STRING_MODE, {\n begin: /b?\"/,\n illegal: null\n }),\n {\n className: 'string',\n variants: [\n { begin: /b?r(#*)\"(.|\\n)*?\"\\1(?!#)/ },\n { begin: /b?'\\\\?(x\\w{2}|u\\w{4}|U\\w{8}|.)'/ }\n ]\n },\n {\n className: 'symbol',\n begin: /'[a-zA-Z_][a-zA-Z0-9_]*/\n },\n {\n className: 'number',\n variants: [\n { begin: '\\\\b0b([01_]+)' + NUMBER_SUFFIX },\n { begin: '\\\\b0o([0-7_]+)' + NUMBER_SUFFIX },\n { begin: '\\\\b0x([A-Fa-f0-9_]+)' + NUMBER_SUFFIX },\n { begin: '\\\\b(\\\\d[\\\\d_]*(\\\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)'\n + NUMBER_SUFFIX }\n ],\n relevance: 0\n },\n {\n begin: [\n /fn/,\n /\\s+/,\n hljs.UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n }\n },\n {\n className: 'meta',\n begin: '#!?\\\\[',\n end: '\\\\]',\n contains: [\n {\n className: 'string',\n begin: /\"/,\n end: /\"/\n }\n ]\n },\n {\n begin: [\n /let/,\n /\\s+/,\n /(?:mut\\s+)?/,\n hljs.UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"keyword\",\n 4: \"variable\"\n }\n },\n // must come before impl/for rule later\n {\n begin: [\n /for/,\n /\\s+/,\n hljs.UNDERSCORE_IDENT_RE,\n /\\s+/,\n /in/\n ],\n className: {\n 1: \"keyword\",\n 3: \"variable\",\n 5: \"keyword\"\n }\n },\n {\n begin: [\n /type/,\n /\\s+/,\n hljs.UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n {\n begin: [\n /(?:trait|enum|struct|union|impl|for)/,\n /\\s+/,\n hljs.UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n {\n begin: hljs.IDENT_RE + '::',\n keywords: {\n keyword: \"Self\",\n built_in: BUILTINS\n }\n },\n {\n className: \"punctuation\",\n begin: '->'\n },\n FUNCTION_INVOKE\n ]\n };\n}\n\nmodule.exports = rust;\n","/*\nLanguage: SAS\nAuthor: Mauricio Caceres <mauricio.caceres.bravo@gmail.com>\nDescription: Syntax Highlighting for SAS\n*/\n\n/** @type LanguageFn */\nfunction sas(hljs) {\n const regex = hljs.regex;\n // Data step and PROC SQL statements\n const SAS_KEYWORDS = [\n \"do\",\n \"if\",\n \"then\",\n \"else\",\n \"end\",\n \"until\",\n \"while\",\n \"abort\",\n \"array\",\n \"attrib\",\n \"by\",\n \"call\",\n \"cards\",\n \"cards4\",\n \"catname\",\n \"continue\",\n \"datalines\",\n \"datalines4\",\n \"delete\",\n \"delim\",\n \"delimiter\",\n \"display\",\n \"dm\",\n \"drop\",\n \"endsas\",\n \"error\",\n \"file\",\n \"filename\",\n \"footnote\",\n \"format\",\n \"goto\",\n \"in\",\n \"infile\",\n \"informat\",\n \"input\",\n \"keep\",\n \"label\",\n \"leave\",\n \"length\",\n \"libname\",\n \"link\",\n \"list\",\n \"lostcard\",\n \"merge\",\n \"missing\",\n \"modify\",\n \"options\",\n \"output\",\n \"out\",\n \"page\",\n \"put\",\n \"redirect\",\n \"remove\",\n \"rename\",\n \"replace\",\n \"retain\",\n \"return\",\n \"select\",\n \"set\",\n \"skip\",\n \"startsas\",\n \"stop\",\n \"title\",\n \"update\",\n \"waitsas\",\n \"where\",\n \"window\",\n \"x|0\",\n \"systask\",\n \"add\",\n \"and\",\n \"alter\",\n \"as\",\n \"cascade\",\n \"check\",\n \"create\",\n \"delete\",\n \"describe\",\n \"distinct\",\n \"drop\",\n \"foreign\",\n \"from\",\n \"group\",\n \"having\",\n \"index\",\n \"insert\",\n \"into\",\n \"in\",\n \"key\",\n \"like\",\n \"message\",\n \"modify\",\n \"msgtype\",\n \"not\",\n \"null\",\n \"on\",\n \"or\",\n \"order\",\n \"primary\",\n \"references\",\n \"reset\",\n \"restrict\",\n \"select\",\n \"set\",\n \"table\",\n \"unique\",\n \"update\",\n \"validate\",\n \"view\",\n \"where\"\n ];\n\n // Built-in SAS functions\n const FUNCTIONS = [\n \"abs\",\n \"addr\",\n \"airy\",\n \"arcos\",\n \"arsin\",\n \"atan\",\n \"attrc\",\n \"attrn\",\n \"band\",\n \"betainv\",\n \"blshift\",\n \"bnot\",\n \"bor\",\n \"brshift\",\n \"bxor\",\n \"byte\",\n \"cdf\",\n \"ceil\",\n \"cexist\",\n \"cinv\",\n \"close\",\n \"cnonct\",\n \"collate\",\n \"compbl\",\n \"compound\",\n \"compress\",\n \"cos\",\n \"cosh\",\n \"css\",\n \"curobs\",\n \"cv\",\n \"daccdb\",\n \"daccdbsl\",\n \"daccsl\",\n \"daccsyd\",\n \"dacctab\",\n \"dairy\",\n \"date\",\n \"datejul\",\n \"datepart\",\n \"datetime\",\n \"day\",\n \"dclose\",\n \"depdb\",\n \"depdbsl\",\n \"depdbsl\",\n \"depsl\",\n \"depsl\",\n \"depsyd\",\n \"depsyd\",\n \"deptab\",\n \"deptab\",\n \"dequote\",\n \"dhms\",\n \"dif\",\n \"digamma\",\n \"dim\",\n \"dinfo\",\n \"dnum\",\n \"dopen\",\n \"doptname\",\n \"doptnum\",\n \"dread\",\n \"dropnote\",\n \"dsname\",\n \"erf\",\n \"erfc\",\n \"exist\",\n \"exp\",\n \"fappend\",\n \"fclose\",\n \"fcol\",\n \"fdelete\",\n \"fetch\",\n \"fetchobs\",\n \"fexist\",\n \"fget\",\n \"fileexist\",\n \"filename\",\n \"fileref\",\n \"finfo\",\n \"finv\",\n \"fipname\",\n \"fipnamel\",\n \"fipstate\",\n \"floor\",\n \"fnonct\",\n \"fnote\",\n \"fopen\",\n \"foptname\",\n \"foptnum\",\n \"fpoint\",\n \"fpos\",\n \"fput\",\n \"fread\",\n \"frewind\",\n \"frlen\",\n \"fsep\",\n \"fuzz\",\n \"fwrite\",\n \"gaminv\",\n \"gamma\",\n \"getoption\",\n \"getvarc\",\n \"getvarn\",\n \"hbound\",\n \"hms\",\n \"hosthelp\",\n \"hour\",\n \"ibessel\",\n \"index\",\n \"indexc\",\n \"indexw\",\n \"input\",\n \"inputc\",\n \"inputn\",\n \"int\",\n \"intck\",\n \"intnx\",\n \"intrr\",\n \"irr\",\n \"jbessel\",\n \"juldate\",\n \"kurtosis\",\n \"lag\",\n \"lbound\",\n \"left\",\n \"length\",\n \"lgamma\",\n \"libname\",\n \"libref\",\n \"log\",\n \"log10\",\n \"log2\",\n \"logpdf\",\n \"logpmf\",\n \"logsdf\",\n \"lowcase\",\n \"max\",\n \"mdy\",\n \"mean\",\n \"min\",\n \"minute\",\n \"mod\",\n \"month\",\n \"mopen\",\n \"mort\",\n \"n\",\n \"netpv\",\n \"nmiss\",\n \"normal\",\n \"note\",\n \"npv\",\n \"open\",\n \"ordinal\",\n \"pathname\",\n \"pdf\",\n \"peek\",\n \"peekc\",\n \"pmf\",\n \"point\",\n \"poisson\",\n \"poke\",\n \"probbeta\",\n \"probbnml\",\n \"probchi\",\n \"probf\",\n \"probgam\",\n \"probhypr\",\n \"probit\",\n \"probnegb\",\n \"probnorm\",\n \"probt\",\n \"put\",\n \"putc\",\n \"putn\",\n \"qtr\",\n \"quote\",\n \"ranbin\",\n \"rancau\",\n \"ranexp\",\n \"rangam\",\n \"range\",\n \"rank\",\n \"rannor\",\n \"ranpoi\",\n \"rantbl\",\n \"rantri\",\n \"ranuni\",\n \"repeat\",\n \"resolve\",\n \"reverse\",\n \"rewind\",\n \"right\",\n \"round\",\n \"saving\",\n \"scan\",\n \"sdf\",\n \"second\",\n \"sign\",\n \"sin\",\n \"sinh\",\n \"skewness\",\n \"soundex\",\n \"spedis\",\n \"sqrt\",\n \"std\",\n \"stderr\",\n \"stfips\",\n \"stname\",\n \"stnamel\",\n \"substr\",\n \"sum\",\n \"symget\",\n \"sysget\",\n \"sysmsg\",\n \"sysprod\",\n \"sysrc\",\n \"system\",\n \"tan\",\n \"tanh\",\n \"time\",\n \"timepart\",\n \"tinv\",\n \"tnonct\",\n \"today\",\n \"translate\",\n \"tranwrd\",\n \"trigamma\",\n \"trim\",\n \"trimn\",\n \"trunc\",\n \"uniform\",\n \"upcase\",\n \"uss\",\n \"var\",\n \"varfmt\",\n \"varinfmt\",\n \"varlabel\",\n \"varlen\",\n \"varname\",\n \"varnum\",\n \"varray\",\n \"varrayx\",\n \"vartype\",\n \"verify\",\n \"vformat\",\n \"vformatd\",\n \"vformatdx\",\n \"vformatn\",\n \"vformatnx\",\n \"vformatw\",\n \"vformatwx\",\n \"vformatx\",\n \"vinarray\",\n \"vinarrayx\",\n \"vinformat\",\n \"vinformatd\",\n \"vinformatdx\",\n \"vinformatn\",\n \"vinformatnx\",\n \"vinformatw\",\n \"vinformatwx\",\n \"vinformatx\",\n \"vlabel\",\n \"vlabelx\",\n \"vlength\",\n \"vlengthx\",\n \"vname\",\n \"vnamex\",\n \"vtype\",\n \"vtypex\",\n \"weekday\",\n \"year\",\n \"yyq\",\n \"zipfips\",\n \"zipname\",\n \"zipnamel\",\n \"zipstate\"\n ];\n\n // Built-in macro functions\n const MACRO_FUNCTIONS = [\n \"bquote\",\n \"nrbquote\",\n \"cmpres\",\n \"qcmpres\",\n \"compstor\",\n \"datatyp\",\n \"display\",\n \"do\",\n \"else\",\n \"end\",\n \"eval\",\n \"global\",\n \"goto\",\n \"if\",\n \"index\",\n \"input\",\n \"keydef\",\n \"label\",\n \"left\",\n \"length\",\n \"let\",\n \"local\",\n \"lowcase\",\n \"macro\",\n \"mend\",\n \"nrbquote\",\n \"nrquote\",\n \"nrstr\",\n \"put\",\n \"qcmpres\",\n \"qleft\",\n \"qlowcase\",\n \"qscan\",\n \"qsubstr\",\n \"qsysfunc\",\n \"qtrim\",\n \"quote\",\n \"qupcase\",\n \"scan\",\n \"str\",\n \"substr\",\n \"superq\",\n \"syscall\",\n \"sysevalf\",\n \"sysexec\",\n \"sysfunc\",\n \"sysget\",\n \"syslput\",\n \"sysprod\",\n \"sysrc\",\n \"sysrput\",\n \"then\",\n \"to\",\n \"trim\",\n \"unquote\",\n \"until\",\n \"upcase\",\n \"verify\",\n \"while\",\n \"window\"\n ];\n\n const LITERALS = [\n \"null\",\n \"missing\",\n \"_all_\",\n \"_automatic_\",\n \"_character_\",\n \"_infile_\",\n \"_n_\",\n \"_name_\",\n \"_null_\",\n \"_numeric_\",\n \"_user_\",\n \"_webout_\"\n ];\n\n return {\n name: 'SAS',\n case_insensitive: true,\n keywords: {\n literal: LITERALS,\n keyword: SAS_KEYWORDS\n },\n contains: [\n {\n // Distinct highlight for proc <proc>, data, run, quit\n className: 'keyword',\n begin: /^\\s*(proc [\\w\\d_]+|data|run|quit)[\\s;]/\n },\n {\n // Macro variables\n className: 'variable',\n begin: /&[a-zA-Z_&][a-zA-Z0-9_]*\\.?/\n },\n {\n begin: [\n /^\\s*/,\n /datalines;|cards;/,\n /(?:.*\\n)+/,\n /^\\s*;\\s*$/\n ],\n className: {\n 2: \"keyword\",\n 3: \"string\"\n }\n },\n {\n begin: [\n /%mend|%macro/,\n /\\s+/,\n /[a-zA-Z_&][a-zA-Z0-9_]*/\n ],\n className: {\n 1: \"built_in\",\n 3: \"title.function\"\n }\n },\n { // Built-in macro variables\n className: 'built_in',\n begin: '%' + regex.either(...MACRO_FUNCTIONS)\n },\n {\n // User-defined macro functions\n className: 'title.function',\n begin: /%[a-zA-Z_][a-zA-Z_0-9]*/\n },\n {\n // TODO: this is most likely an incorrect classification\n // built_in may need more nuance\n // https://github.com/highlightjs/highlight.js/issues/2521\n className: 'meta',\n begin: regex.either(...FUNCTIONS) + '(?=\\\\()'\n },\n {\n className: 'string',\n variants: [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n },\n hljs.COMMENT('\\\\*', ';'),\n hljs.C_BLOCK_COMMENT_MODE\n ]\n };\n}\n\nmodule.exports = sas;\n","/*\nLanguage: Scala\nCategory: functional\nAuthor: Jan Berkel <jan.berkel@gmail.com>\nContributors: Erik Osheim <d_m@plastic-idolatry.com>\nWebsite: https://www.scala-lang.org\n*/\n\nfunction scala(hljs) {\n const regex = hljs.regex;\n const ANNOTATION = {\n className: 'meta',\n begin: '@[A-Za-z]+'\n };\n\n // used in strings for escaping/interpolation/substitution\n const SUBST = {\n className: 'subst',\n variants: [\n { begin: '\\\\$[A-Za-z0-9_]+' },\n {\n begin: /\\$\\{/,\n end: /\\}/\n }\n ]\n };\n\n const STRING = {\n className: 'string',\n variants: [\n {\n begin: '\"\"\"',\n end: '\"\"\"'\n },\n {\n begin: '\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n {\n begin: '[a-z]+\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ]\n },\n {\n className: 'string',\n begin: '[a-z]+\"\"\"',\n end: '\"\"\"',\n contains: [ SUBST ],\n relevance: 10\n }\n ]\n\n };\n\n const TYPE = {\n className: 'type',\n begin: '\\\\b[A-Z][A-Za-z0-9_]*',\n relevance: 0\n };\n\n const NAME = {\n className: 'title',\n begin: /[^0-9\\n\\t \"'(),.`{}\\[\\]:;][^\\n\\t \"'(),.`{}\\[\\]:;]+|[^0-9\\n\\t \"'(),.`{}\\[\\]:;=]/,\n relevance: 0\n };\n\n const CLASS = {\n className: 'class',\n beginKeywords: 'class object trait type',\n end: /[:={\\[\\n;]/,\n excludeEnd: true,\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n {\n beginKeywords: 'extends with',\n relevance: 10\n },\n {\n begin: /\\[/,\n end: /\\]/,\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0,\n contains: [ TYPE ]\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0,\n contains: [ TYPE ]\n },\n NAME\n ]\n };\n\n const METHOD = {\n className: 'function',\n beginKeywords: 'def',\n end: regex.lookahead(/[:={\\[(\\n;]/),\n contains: [ NAME ]\n };\n\n const EXTENSION = {\n begin: [\n /^\\s*/, // Is first token on the line\n 'extension',\n /\\s+(?=[[(])/, // followed by at least one space and `[` or `(`\n ],\n beginScope: { 2: \"keyword\", }\n };\n\n const END = [\n {\n begin: [\n /^\\s*/, // Is first token on the line\n /end/,\n /\\s+/,\n /(extension\\b)?/, // `extension` is the only marker that follows an `end` that cannot be captured by another rule.\n ],\n beginScope: {\n 2: \"keyword\",\n 4: \"keyword\",\n }\n }\n ];\n\n // TODO: use negative look-behind in future\n // /(?<!\\.)\\binline(?=\\s)/\n const INLINE_MODES = [\n { match: /\\.inline\\b/ },\n {\n begin: /\\binline(?=\\s)/,\n keywords: 'inline'\n }\n ];\n\n const USING_PARAM_CLAUSE = {\n begin: [\n /\\(\\s*/, // Opening `(` of a parameter or argument list\n /using/,\n /\\s+(?!\\))/, // Spaces not followed by `)`\n ],\n beginScope: { 2: \"keyword\", }\n };\n\n return {\n name: 'Scala',\n keywords: {\n literal: 'true false null',\n keyword: 'type yield lazy override def with val var sealed abstract private trait object if then forSome for while do throw finally protected extends import final return else break new catch super class case package default try this match continue throws implicit export enum given'\n },\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n STRING,\n TYPE,\n METHOD,\n CLASS,\n hljs.C_NUMBER_MODE,\n EXTENSION,\n END,\n ...INLINE_MODES,\n USING_PARAM_CLAUSE,\n ANNOTATION\n ]\n };\n}\n\nmodule.exports = scala;\n","/*\nLanguage: Scheme\nDescription: Scheme is a programming language in the Lisp family.\n (keywords based on http://community.schemewiki.org/?scheme-keywords)\nAuthor: JP Verkamp <me@jverkamp.com>\nContributors: Ivan Sagalaev <maniac@softwaremaniacs.org>\nOrigin: clojure.js\nWebsite: http://community.schemewiki.org/?what-is-scheme\nCategory: lisp\n*/\n\nfunction scheme(hljs) {\n const SCHEME_IDENT_RE = '[^\\\\(\\\\)\\\\[\\\\]\\\\{\\\\}\",\\'`;#|\\\\\\\\\\\\s]+';\n const SCHEME_SIMPLE_NUMBER_RE = '(-|\\\\+)?\\\\d+([./]\\\\d+)?';\n const SCHEME_COMPLEX_NUMBER_RE = SCHEME_SIMPLE_NUMBER_RE + '[+\\\\-]' + SCHEME_SIMPLE_NUMBER_RE + 'i';\n const KEYWORDS = {\n $pattern: SCHEME_IDENT_RE,\n built_in:\n 'case-lambda call/cc class define-class exit-handler field import '\n + 'inherit init-field interface let*-values let-values let/ec mixin '\n + 'opt-lambda override protect provide public rename require '\n + 'require-for-syntax syntax syntax-case syntax-error unit/sig unless '\n + 'when with-syntax and begin call-with-current-continuation '\n + 'call-with-input-file call-with-output-file case cond define '\n + 'define-syntax delay do dynamic-wind else for-each if lambda let let* '\n + 'let-syntax letrec letrec-syntax map or syntax-rules \\' * + , ,@ - ... / '\n + '; < <= = => > >= ` abs acos angle append apply asin assoc assq assv atan '\n + 'boolean? caar cadr call-with-input-file call-with-output-file '\n + 'call-with-values car cdddar cddddr cdr ceiling char->integer '\n + 'char-alphabetic? char-ci<=? char-ci<? char-ci=? char-ci>=? char-ci>? '\n + 'char-downcase char-lower-case? char-numeric? char-ready? char-upcase '\n + 'char-upper-case? char-whitespace? char<=? char<? char=? char>=? char>? '\n + 'char? close-input-port close-output-port complex? cons cos '\n + 'current-input-port current-output-port denominator display eof-object? '\n + 'eq? equal? eqv? eval even? exact->inexact exact? exp expt floor '\n + 'force gcd imag-part inexact->exact inexact? input-port? integer->char '\n + 'integer? interaction-environment lcm length list list->string '\n + 'list->vector list-ref list-tail list? load log magnitude make-polar '\n + 'make-rectangular make-string make-vector max member memq memv min '\n + 'modulo negative? newline not null-environment null? number->string '\n + 'number? numerator odd? open-input-file open-output-file output-port? '\n + 'pair? peek-char port? positive? procedure? quasiquote quote quotient '\n + 'rational? rationalize read read-char real-part real? remainder reverse '\n + 'round scheme-report-environment set! set-car! set-cdr! sin sqrt string '\n + 'string->list string->number string->symbol string-append string-ci<=? '\n + 'string-ci<? string-ci=? string-ci>=? string-ci>? string-copy '\n + 'string-fill! string-length string-ref string-set! string<=? string<? '\n + 'string=? string>=? string>? string? substring symbol->string symbol? '\n + 'tan transcript-off transcript-on truncate values vector '\n + 'vector->list vector-fill! vector-length vector-ref vector-set! '\n + 'with-input-from-file with-output-to-file write write-char zero?'\n };\n\n const LITERAL = {\n className: 'literal',\n begin: '(#t|#f|#\\\\\\\\' + SCHEME_IDENT_RE + '|#\\\\\\\\.)'\n };\n\n const NUMBER = {\n className: 'number',\n variants: [\n {\n begin: SCHEME_SIMPLE_NUMBER_RE,\n relevance: 0\n },\n {\n begin: SCHEME_COMPLEX_NUMBER_RE,\n relevance: 0\n },\n { begin: '#b[0-1]+(/[0-1]+)?' },\n { begin: '#o[0-7]+(/[0-7]+)?' },\n { begin: '#x[0-9a-f]+(/[0-9a-f]+)?' }\n ]\n };\n\n const STRING = hljs.QUOTE_STRING_MODE;\n\n const COMMENT_MODES = [\n hljs.COMMENT(\n ';',\n '$',\n { relevance: 0 }\n ),\n hljs.COMMENT('#\\\\|', '\\\\|#')\n ];\n\n const IDENT = {\n begin: SCHEME_IDENT_RE,\n relevance: 0\n };\n\n const QUOTED_IDENT = {\n className: 'symbol',\n begin: '\\'' + SCHEME_IDENT_RE\n };\n\n const BODY = {\n endsWithParent: true,\n relevance: 0\n };\n\n const QUOTED_LIST = {\n variants: [\n { begin: /'/ },\n { begin: '`' }\n ],\n contains: [\n {\n begin: '\\\\(',\n end: '\\\\)',\n contains: [\n 'self',\n LITERAL,\n STRING,\n NUMBER,\n IDENT,\n QUOTED_IDENT\n ]\n }\n ]\n };\n\n const NAME = {\n className: 'name',\n relevance: 0,\n begin: SCHEME_IDENT_RE,\n keywords: KEYWORDS\n };\n\n const LAMBDA = {\n begin: /lambda/,\n endsWithParent: true,\n returnBegin: true,\n contains: [\n NAME,\n {\n endsParent: true,\n variants: [\n {\n begin: /\\(/,\n end: /\\)/\n },\n {\n begin: /\\[/,\n end: /\\]/\n }\n ],\n contains: [ IDENT ]\n }\n ]\n };\n\n const LIST = {\n variants: [\n {\n begin: '\\\\(',\n end: '\\\\)'\n },\n {\n begin: '\\\\[',\n end: '\\\\]'\n }\n ],\n contains: [\n LAMBDA,\n NAME,\n BODY\n ]\n };\n\n BODY.contains = [\n LITERAL,\n NUMBER,\n STRING,\n IDENT,\n QUOTED_IDENT,\n QUOTED_LIST,\n LIST\n ].concat(COMMENT_MODES);\n\n return {\n name: 'Scheme',\n illegal: /\\S/,\n contains: [\n hljs.SHEBANG(),\n NUMBER,\n STRING,\n QUOTED_IDENT,\n QUOTED_LIST,\n LIST\n ].concat(COMMENT_MODES)\n };\n}\n\nmodule.exports = scheme;\n","/*\nLanguage: Scilab\nAuthor: Sylvestre Ledru <sylvestre.ledru@scilab-enterprises.com>\nOrigin: matlab.js\nDescription: Scilab is a port from Matlab\nWebsite: https://www.scilab.org\nCategory: scientific\n*/\n\nfunction scilab(hljs) {\n const COMMON_CONTAINS = [\n hljs.C_NUMBER_MODE,\n {\n className: 'string',\n begin: '\\'|\\\"',\n end: '\\'|\\\"',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n { begin: '\\'\\'' }\n ]\n }\n ];\n\n return {\n name: 'Scilab',\n aliases: [ 'sci' ],\n keywords: {\n $pattern: /%?\\w+/,\n keyword: 'abort break case clear catch continue do elseif else endfunction end for function '\n + 'global if pause return resume select try then while',\n literal:\n '%f %F %t %T %pi %eps %inf %nan %e %i %z %s',\n built_in: // Scilab has more than 2000 functions. Just list the most commons\n 'abs and acos asin atan ceil cd chdir clearglobal cosh cos cumprod deff disp error '\n + 'exec execstr exists exp eye gettext floor fprintf fread fsolve imag isdef isempty '\n + 'isinfisnan isvector lasterror length load linspace list listfiles log10 log2 log '\n + 'max min msprintf mclose mopen ones or pathconvert poly printf prod pwd rand real '\n + 'round sinh sin size gsort sprintf sqrt strcat strcmps tring sum system tanh tan '\n + 'type typename warning zeros matrix'\n },\n illegal: '(\"|#|/\\\\*|\\\\s+/\\\\w+)',\n contains: [\n {\n className: 'function',\n beginKeywords: 'function',\n end: '$',\n contains: [\n hljs.UNDERSCORE_TITLE_MODE,\n {\n className: 'params',\n begin: '\\\\(',\n end: '\\\\)'\n }\n ]\n },\n // seems to be a guard against [ident]' or [ident].\n // perhaps to prevent attributes from flagging as keywords?\n {\n begin: '[a-zA-Z_][a-zA-Z_0-9]*[\\\\.\\']+',\n relevance: 0\n },\n {\n begin: '\\\\[',\n end: '\\\\][\\\\.\\']*',\n relevance: 0,\n contains: COMMON_CONTAINS\n },\n hljs.COMMENT('//', '$')\n ].concat(COMMON_CONTAINS)\n };\n}\n\nmodule.exports = scilab;\n","const MODES = (hljs) => {\n return {\n IMPORTANT: {\n scope: 'meta',\n begin: '!important'\n },\n BLOCK_COMMENT: hljs.C_BLOCK_COMMENT_MODE,\n HEXCOLOR: {\n scope: 'number',\n begin: /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\\b/\n },\n FUNCTION_DISPATCH: {\n className: \"built_in\",\n begin: /[\\w-]+(?=\\()/\n },\n ATTRIBUTE_SELECTOR_MODE: {\n scope: 'selector-attr',\n begin: /\\[/,\n end: /\\]/,\n illegal: '$',\n contains: [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n },\n CSS_NUMBER_MODE: {\n scope: 'number',\n begin: hljs.NUMBER_RE + '(' +\n '%|em|ex|ch|rem' +\n '|vw|vh|vmin|vmax' +\n '|cm|mm|in|pt|pc|px' +\n '|deg|grad|rad|turn' +\n '|s|ms' +\n '|Hz|kHz' +\n '|dpi|dpcm|dppx' +\n ')?',\n relevance: 0\n },\n CSS_VARIABLE: {\n className: \"attr\",\n begin: /--[A-Za-z][A-Za-z0-9_-]*/\n }\n };\n};\n\nconst TAGS = [\n 'a',\n 'abbr',\n 'address',\n 'article',\n 'aside',\n 'audio',\n 'b',\n 'blockquote',\n 'body',\n 'button',\n 'canvas',\n 'caption',\n 'cite',\n 'code',\n 'dd',\n 'del',\n 'details',\n 'dfn',\n 'div',\n 'dl',\n 'dt',\n 'em',\n 'fieldset',\n 'figcaption',\n 'figure',\n 'footer',\n 'form',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'header',\n 'hgroup',\n 'html',\n 'i',\n 'iframe',\n 'img',\n 'input',\n 'ins',\n 'kbd',\n 'label',\n 'legend',\n 'li',\n 'main',\n 'mark',\n 'menu',\n 'nav',\n 'object',\n 'ol',\n 'p',\n 'q',\n 'quote',\n 'samp',\n 'section',\n 'span',\n 'strong',\n 'summary',\n 'sup',\n 'table',\n 'tbody',\n 'td',\n 'textarea',\n 'tfoot',\n 'th',\n 'thead',\n 'time',\n 'tr',\n 'ul',\n 'var',\n 'video'\n];\n\nconst MEDIA_FEATURES = [\n 'any-hover',\n 'any-pointer',\n 'aspect-ratio',\n 'color',\n 'color-gamut',\n 'color-index',\n 'device-aspect-ratio',\n 'device-height',\n 'device-width',\n 'display-mode',\n 'forced-colors',\n 'grid',\n 'height',\n 'hover',\n 'inverted-colors',\n 'monochrome',\n 'orientation',\n 'overflow-block',\n 'overflow-inline',\n 'pointer',\n 'prefers-color-scheme',\n 'prefers-contrast',\n 'prefers-reduced-motion',\n 'prefers-reduced-transparency',\n 'resolution',\n 'scan',\n 'scripting',\n 'update',\n 'width',\n // TODO: find a better solution?\n 'min-width',\n 'max-width',\n 'min-height',\n 'max-height'\n];\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes\nconst PSEUDO_CLASSES = [\n 'active',\n 'any-link',\n 'blank',\n 'checked',\n 'current',\n 'default',\n 'defined',\n 'dir', // dir()\n 'disabled',\n 'drop',\n 'empty',\n 'enabled',\n 'first',\n 'first-child',\n 'first-of-type',\n 'fullscreen',\n 'future',\n 'focus',\n 'focus-visible',\n 'focus-within',\n 'has', // has()\n 'host', // host or host()\n 'host-context', // host-context()\n 'hover',\n 'indeterminate',\n 'in-range',\n 'invalid',\n 'is', // is()\n 'lang', // lang()\n 'last-child',\n 'last-of-type',\n 'left',\n 'link',\n 'local-link',\n 'not', // not()\n 'nth-child', // nth-child()\n 'nth-col', // nth-col()\n 'nth-last-child', // nth-last-child()\n 'nth-last-col', // nth-last-col()\n 'nth-last-of-type', //nth-last-of-type()\n 'nth-of-type', //nth-of-type()\n 'only-child',\n 'only-of-type',\n 'optional',\n 'out-of-range',\n 'past',\n 'placeholder-shown',\n 'read-only',\n 'read-write',\n 'required',\n 'right',\n 'root',\n 'scope',\n 'target',\n 'target-within',\n 'user-invalid',\n 'valid',\n 'visited',\n 'where' // where()\n];\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-elements\nconst PSEUDO_ELEMENTS = [\n 'after',\n 'backdrop',\n 'before',\n 'cue',\n 'cue-region',\n 'first-letter',\n 'first-line',\n 'grammar-error',\n 'marker',\n 'part',\n 'placeholder',\n 'selection',\n 'slotted',\n 'spelling-error'\n];\n\nconst ATTRIBUTES = [\n 'align-content',\n 'align-items',\n 'align-self',\n 'all',\n 'animation',\n 'animation-delay',\n 'animation-direction',\n 'animation-duration',\n 'animation-fill-mode',\n 'animation-iteration-count',\n 'animation-name',\n 'animation-play-state',\n 'animation-timing-function',\n 'backface-visibility',\n 'background',\n 'background-attachment',\n 'background-blend-mode',\n 'background-clip',\n 'background-color',\n 'background-image',\n 'background-origin',\n 'background-position',\n 'background-repeat',\n 'background-size',\n 'block-size',\n 'border',\n 'border-block',\n 'border-block-color',\n 'border-block-end',\n 'border-block-end-color',\n 'border-block-end-style',\n 'border-block-end-width',\n 'border-block-start',\n 'border-block-start-color',\n 'border-block-start-style',\n 'border-block-start-width',\n 'border-block-style',\n 'border-block-width',\n 'border-bottom',\n 'border-bottom-color',\n 'border-bottom-left-radius',\n 'border-bottom-right-radius',\n 'border-bottom-style',\n 'border-bottom-width',\n 'border-collapse',\n 'border-color',\n 'border-image',\n 'border-image-outset',\n 'border-image-repeat',\n 'border-image-slice',\n 'border-image-source',\n 'border-image-width',\n 'border-inline',\n 'border-inline-color',\n 'border-inline-end',\n 'border-inline-end-color',\n 'border-inline-end-style',\n 'border-inline-end-width',\n 'border-inline-start',\n 'border-inline-start-color',\n 'border-inline-start-style',\n 'border-inline-start-width',\n 'border-inline-style',\n 'border-inline-width',\n 'border-left',\n 'border-left-color',\n 'border-left-style',\n 'border-left-width',\n 'border-radius',\n 'border-right',\n 'border-right-color',\n 'border-right-style',\n 'border-right-width',\n 'border-spacing',\n 'border-style',\n 'border-top',\n 'border-top-color',\n 'border-top-left-radius',\n 'border-top-right-radius',\n 'border-top-style',\n 'border-top-width',\n 'border-width',\n 'bottom',\n 'box-decoration-break',\n 'box-shadow',\n 'box-sizing',\n 'break-after',\n 'break-before',\n 'break-inside',\n 'caption-side',\n 'caret-color',\n 'clear',\n 'clip',\n 'clip-path',\n 'clip-rule',\n 'color',\n 'column-count',\n 'column-fill',\n 'column-gap',\n 'column-rule',\n 'column-rule-color',\n 'column-rule-style',\n 'column-rule-width',\n 'column-span',\n 'column-width',\n 'columns',\n 'contain',\n 'content',\n 'content-visibility',\n 'counter-increment',\n 'counter-reset',\n 'cue',\n 'cue-after',\n 'cue-before',\n 'cursor',\n 'direction',\n 'display',\n 'empty-cells',\n 'filter',\n 'flex',\n 'flex-basis',\n 'flex-direction',\n 'flex-flow',\n 'flex-grow',\n 'flex-shrink',\n 'flex-wrap',\n 'float',\n 'flow',\n 'font',\n 'font-display',\n 'font-family',\n 'font-feature-settings',\n 'font-kerning',\n 'font-language-override',\n 'font-size',\n 'font-size-adjust',\n 'font-smoothing',\n 'font-stretch',\n 'font-style',\n 'font-synthesis',\n 'font-variant',\n 'font-variant-caps',\n 'font-variant-east-asian',\n 'font-variant-ligatures',\n 'font-variant-numeric',\n 'font-variant-position',\n 'font-variation-settings',\n 'font-weight',\n 'gap',\n 'glyph-orientation-vertical',\n 'grid',\n 'grid-area',\n 'grid-auto-columns',\n 'grid-auto-flow',\n 'grid-auto-rows',\n 'grid-column',\n 'grid-column-end',\n 'grid-column-start',\n 'grid-gap',\n 'grid-row',\n 'grid-row-end',\n 'grid-row-start',\n 'grid-template',\n 'grid-template-areas',\n 'grid-template-columns',\n 'grid-template-rows',\n 'hanging-punctuation',\n 'height',\n 'hyphens',\n 'icon',\n 'image-orientation',\n 'image-rendering',\n 'image-resolution',\n 'ime-mode',\n 'inline-size',\n 'isolation',\n 'justify-content',\n 'left',\n 'letter-spacing',\n 'line-break',\n 'line-height',\n 'list-style',\n 'list-style-image',\n 'list-style-position',\n 'list-style-type',\n 'margin',\n 'margin-block',\n 'margin-block-end',\n 'margin-block-start',\n 'margin-bottom',\n 'margin-inline',\n 'margin-inline-end',\n 'margin-inline-start',\n 'margin-left',\n 'margin-right',\n 'margin-top',\n 'marks',\n 'mask',\n 'mask-border',\n 'mask-border-mode',\n 'mask-border-outset',\n 'mask-border-repeat',\n 'mask-border-slice',\n 'mask-border-source',\n 'mask-border-width',\n 'mask-clip',\n 'mask-composite',\n 'mask-image',\n 'mask-mode',\n 'mask-origin',\n 'mask-position',\n 'mask-repeat',\n 'mask-size',\n 'mask-type',\n 'max-block-size',\n 'max-height',\n 'max-inline-size',\n 'max-width',\n 'min-block-size',\n 'min-height',\n 'min-inline-size',\n 'min-width',\n 'mix-blend-mode',\n 'nav-down',\n 'nav-index',\n 'nav-left',\n 'nav-right',\n 'nav-up',\n 'none',\n 'normal',\n 'object-fit',\n 'object-position',\n 'opacity',\n 'order',\n 'orphans',\n 'outline',\n 'outline-color',\n 'outline-offset',\n 'outline-style',\n 'outline-width',\n 'overflow',\n 'overflow-wrap',\n 'overflow-x',\n 'overflow-y',\n 'padding',\n 'padding-block',\n 'padding-block-end',\n 'padding-block-start',\n 'padding-bottom',\n 'padding-inline',\n 'padding-inline-end',\n 'padding-inline-start',\n 'padding-left',\n 'padding-right',\n 'padding-top',\n 'page-break-after',\n 'page-break-before',\n 'page-break-inside',\n 'pause',\n 'pause-after',\n 'pause-before',\n 'perspective',\n 'perspective-origin',\n 'pointer-events',\n 'position',\n 'quotes',\n 'resize',\n 'rest',\n 'rest-after',\n 'rest-before',\n 'right',\n 'row-gap',\n 'scroll-margin',\n 'scroll-margin-block',\n 'scroll-margin-block-end',\n 'scroll-margin-block-start',\n 'scroll-margin-bottom',\n 'scroll-margin-inline',\n 'scroll-margin-inline-end',\n 'scroll-margin-inline-start',\n 'scroll-margin-left',\n 'scroll-margin-right',\n 'scroll-margin-top',\n 'scroll-padding',\n 'scroll-padding-block',\n 'scroll-padding-block-end',\n 'scroll-padding-block-start',\n 'scroll-padding-bottom',\n 'scroll-padding-inline',\n 'scroll-padding-inline-end',\n 'scroll-padding-inline-start',\n 'scroll-padding-left',\n 'scroll-padding-right',\n 'scroll-padding-top',\n 'scroll-snap-align',\n 'scroll-snap-stop',\n 'scroll-snap-type',\n 'scrollbar-color',\n 'scrollbar-gutter',\n 'scrollbar-width',\n 'shape-image-threshold',\n 'shape-margin',\n 'shape-outside',\n 'speak',\n 'speak-as',\n 'src', // @font-face\n 'tab-size',\n 'table-layout',\n 'text-align',\n 'text-align-all',\n 'text-align-last',\n 'text-combine-upright',\n 'text-decoration',\n 'text-decoration-color',\n 'text-decoration-line',\n 'text-decoration-style',\n 'text-emphasis',\n 'text-emphasis-color',\n 'text-emphasis-position',\n 'text-emphasis-style',\n 'text-indent',\n 'text-justify',\n 'text-orientation',\n 'text-overflow',\n 'text-rendering',\n 'text-shadow',\n 'text-transform',\n 'text-underline-position',\n 'top',\n 'transform',\n 'transform-box',\n 'transform-origin',\n 'transform-style',\n 'transition',\n 'transition-delay',\n 'transition-duration',\n 'transition-property',\n 'transition-timing-function',\n 'unicode-bidi',\n 'vertical-align',\n 'visibility',\n 'voice-balance',\n 'voice-duration',\n 'voice-family',\n 'voice-pitch',\n 'voice-range',\n 'voice-rate',\n 'voice-stress',\n 'voice-volume',\n 'white-space',\n 'widows',\n 'width',\n 'will-change',\n 'word-break',\n 'word-spacing',\n 'word-wrap',\n 'writing-mode',\n 'z-index'\n // reverse makes sure longer attributes `font-weight` are matched fully\n // instead of getting false positives on say `font`\n].reverse();\n\n/*\nLanguage: SCSS\nDescription: Scss is an extension of the syntax of CSS.\nAuthor: Kurt Emch <kurt@kurtemch.com>\nWebsite: https://sass-lang.com\nCategory: common, css, web\n*/\n\n/** @type LanguageFn */\nfunction scss(hljs) {\n const modes = MODES(hljs);\n const PSEUDO_ELEMENTS$1 = PSEUDO_ELEMENTS;\n const PSEUDO_CLASSES$1 = PSEUDO_CLASSES;\n\n const AT_IDENTIFIER = '@[a-z-]+'; // @font-face\n const AT_MODIFIERS = \"and or not only\";\n const IDENT_RE = '[a-zA-Z-][a-zA-Z0-9_-]*';\n const VARIABLE = {\n className: 'variable',\n begin: '(\\\\$' + IDENT_RE + ')\\\\b',\n relevance: 0\n };\n\n return {\n name: 'SCSS',\n case_insensitive: true,\n illegal: '[=/|\\']',\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n // to recognize keyframe 40% etc which are outside the scope of our\n // attribute value mode\n modes.CSS_NUMBER_MODE,\n {\n className: 'selector-id',\n begin: '#[A-Za-z0-9_-]+',\n relevance: 0\n },\n {\n className: 'selector-class',\n begin: '\\\\.[A-Za-z0-9_-]+',\n relevance: 0\n },\n modes.ATTRIBUTE_SELECTOR_MODE,\n {\n className: 'selector-tag',\n begin: '\\\\b(' + TAGS.join('|') + ')\\\\b',\n // was there, before, but why?\n relevance: 0\n },\n {\n className: 'selector-pseudo',\n begin: ':(' + PSEUDO_CLASSES$1.join('|') + ')'\n },\n {\n className: 'selector-pseudo',\n begin: ':(:)?(' + PSEUDO_ELEMENTS$1.join('|') + ')'\n },\n VARIABLE,\n { // pseudo-selector params\n begin: /\\(/,\n end: /\\)/,\n contains: [ modes.CSS_NUMBER_MODE ]\n },\n modes.CSS_VARIABLE,\n {\n className: 'attribute',\n begin: '\\\\b(' + ATTRIBUTES.join('|') + ')\\\\b'\n },\n { begin: '\\\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\\\b' },\n {\n begin: /:/,\n end: /[;}{]/,\n contains: [\n modes.BLOCK_COMMENT,\n VARIABLE,\n modes.HEXCOLOR,\n modes.CSS_NUMBER_MODE,\n hljs.QUOTE_STRING_MODE,\n hljs.APOS_STRING_MODE,\n modes.IMPORTANT\n ]\n },\n // matching these here allows us to treat them more like regular CSS\n // rules so everything between the {} gets regular rule highlighting,\n // which is what we want for page and font-face\n {\n begin: '@(page|font-face)',\n keywords: {\n $pattern: AT_IDENTIFIER,\n keyword: '@page @font-face'\n }\n },\n {\n begin: '@',\n end: '[{;]',\n returnBegin: true,\n keywords: {\n $pattern: /[a-z-]+/,\n keyword: AT_MODIFIERS,\n attribute: MEDIA_FEATURES.join(\" \")\n },\n contains: [\n {\n begin: AT_IDENTIFIER,\n className: \"keyword\"\n },\n {\n begin: /[a-z-]+(?=:)/,\n className: \"attribute\"\n },\n VARIABLE,\n hljs.QUOTE_STRING_MODE,\n hljs.APOS_STRING_MODE,\n modes.HEXCOLOR,\n modes.CSS_NUMBER_MODE\n ]\n },\n modes.FUNCTION_DISPATCH\n ]\n };\n}\n\nmodule.exports = scss;\n","/*\nLanguage: Shell Session\nRequires: bash.js\nAuthor: TSUYUSATO Kitsune <make.just.on@gmail.com>\nCategory: common\nAudit: 2020\n*/\n\n/** @type LanguageFn */\nfunction shell(hljs) {\n return {\n name: 'Shell Session',\n aliases: [\n 'console',\n 'shellsession'\n ],\n contains: [\n {\n className: 'meta.prompt',\n // We cannot add \\s (spaces) in the regular expression otherwise it will be too broad and produce unexpected result.\n // For instance, in the following example, it would match \"echo /path/to/home >\" as a prompt:\n // echo /path/to/home > t.exe\n begin: /^\\s{0,3}[/~\\w\\d[\\]()@-]*[>%$#][ ]?/,\n starts: {\n end: /[^\\\\](?=\\s*$)/,\n subLanguage: 'bash'\n }\n }\n ]\n };\n}\n\nmodule.exports = shell;\n","/*\nLanguage: Smali\nAuthor: Dennis Titze <dennis.titze@gmail.com>\nDescription: Basic Smali highlighting\nWebsite: https://github.com/JesusFreke/smali\n*/\n\nfunction smali(hljs) {\n const smali_instr_low_prio = [\n 'add',\n 'and',\n 'cmp',\n 'cmpg',\n 'cmpl',\n 'const',\n 'div',\n 'double',\n 'float',\n 'goto',\n 'if',\n 'int',\n 'long',\n 'move',\n 'mul',\n 'neg',\n 'new',\n 'nop',\n 'not',\n 'or',\n 'rem',\n 'return',\n 'shl',\n 'shr',\n 'sput',\n 'sub',\n 'throw',\n 'ushr',\n 'xor'\n ];\n const smali_instr_high_prio = [\n 'aget',\n 'aput',\n 'array',\n 'check',\n 'execute',\n 'fill',\n 'filled',\n 'goto/16',\n 'goto/32',\n 'iget',\n 'instance',\n 'invoke',\n 'iput',\n 'monitor',\n 'packed',\n 'sget',\n 'sparse'\n ];\n const smali_keywords = [\n 'transient',\n 'constructor',\n 'abstract',\n 'final',\n 'synthetic',\n 'public',\n 'private',\n 'protected',\n 'static',\n 'bridge',\n 'system'\n ];\n return {\n name: 'Smali',\n contains: [\n {\n className: 'string',\n begin: '\"',\n end: '\"',\n relevance: 0\n },\n hljs.COMMENT(\n '#',\n '$',\n { relevance: 0 }\n ),\n {\n className: 'keyword',\n variants: [\n { begin: '\\\\s*\\\\.end\\\\s[a-zA-Z0-9]*' },\n {\n begin: '^[ ]*\\\\.[a-zA-Z]*',\n relevance: 0\n },\n {\n begin: '\\\\s:[a-zA-Z_0-9]*',\n relevance: 0\n },\n { begin: '\\\\s(' + smali_keywords.join('|') + ')' }\n ]\n },\n {\n className: 'built_in',\n variants: [\n { begin: '\\\\s(' + smali_instr_low_prio.join('|') + ')\\\\s' },\n {\n begin: '\\\\s(' + smali_instr_low_prio.join('|') + ')((-|/)[a-zA-Z0-9]+)+\\\\s',\n relevance: 10\n },\n {\n begin: '\\\\s(' + smali_instr_high_prio.join('|') + ')((-|/)[a-zA-Z0-9]+)*\\\\s',\n relevance: 10\n }\n ]\n },\n {\n className: 'class',\n begin: 'L[^\\(;:\\n]*;',\n relevance: 0\n },\n { begin: '[vp][0-9]+' }\n ]\n };\n}\n\nmodule.exports = smali;\n","/*\nLanguage: Smalltalk\nDescription: Smalltalk is an object-oriented, dynamically typed reflective programming language.\nAuthor: Vladimir Gubarkov <xonixx@gmail.com>\nWebsite: https://en.wikipedia.org/wiki/Smalltalk\n*/\n\nfunction smalltalk(hljs) {\n const VAR_IDENT_RE = '[a-z][a-zA-Z0-9_]*';\n const CHAR = {\n className: 'string',\n begin: '\\\\$.{1}'\n };\n const SYMBOL = {\n className: 'symbol',\n begin: '#' + hljs.UNDERSCORE_IDENT_RE\n };\n return {\n name: 'Smalltalk',\n aliases: [ 'st' ],\n keywords: [\n \"self\",\n \"super\",\n \"nil\",\n \"true\",\n \"false\",\n \"thisContext\"\n ],\n contains: [\n hljs.COMMENT('\"', '\"'),\n hljs.APOS_STRING_MODE,\n {\n className: 'type',\n begin: '\\\\b[A-Z][A-Za-z0-9_]*',\n relevance: 0\n },\n {\n begin: VAR_IDENT_RE + ':',\n relevance: 0\n },\n hljs.C_NUMBER_MODE,\n SYMBOL,\n CHAR,\n {\n // This looks more complicated than needed to avoid combinatorial\n // explosion under V8. It effectively means `| var1 var2 ... |` with\n // whitespace adjacent to `|` being optional.\n begin: '\\\\|[ ]*' + VAR_IDENT_RE + '([ ]+' + VAR_IDENT_RE + ')*[ ]*\\\\|',\n returnBegin: true,\n end: /\\|/,\n illegal: /\\S/,\n contains: [ { begin: '(\\\\|[ ]*)?' + VAR_IDENT_RE } ]\n },\n {\n begin: '#\\\\(',\n end: '\\\\)',\n contains: [\n hljs.APOS_STRING_MODE,\n CHAR,\n hljs.C_NUMBER_MODE,\n SYMBOL\n ]\n }\n ]\n };\n}\n\nmodule.exports = smalltalk;\n","/*\nLanguage: SML (Standard ML)\nAuthor: Edwin Dalorzo <edwin@dalorzo.org>\nDescription: SML language definition.\nWebsite: https://www.smlnj.org\nOrigin: ocaml.js\nCategory: functional\n*/\nfunction sml(hljs) {\n return {\n name: 'SML (Standard ML)',\n aliases: [ 'ml' ],\n keywords: {\n $pattern: '[a-z_]\\\\w*!?',\n keyword:\n /* according to Definition of Standard ML 97 */\n 'abstype and andalso as case datatype do else end eqtype '\n + 'exception fn fun functor handle if in include infix infixr '\n + 'let local nonfix of op open orelse raise rec sharing sig '\n + 'signature struct structure then type val with withtype where while',\n built_in:\n /* built-in types according to basis library */\n 'array bool char exn int list option order real ref string substring vector unit word',\n literal:\n 'true false NONE SOME LESS EQUAL GREATER nil'\n },\n illegal: /\\/\\/|>>/,\n contains: [\n {\n className: 'literal',\n begin: /\\[(\\|\\|)?\\]|\\(\\)/,\n relevance: 0\n },\n hljs.COMMENT(\n '\\\\(\\\\*',\n '\\\\*\\\\)',\n { contains: [ 'self' ] }\n ),\n { /* type variable */\n className: 'symbol',\n begin: '\\'[A-Za-z_](?!\\')[\\\\w\\']*'\n /* the grammar is ambiguous on how 'a'b should be interpreted but not the compiler */\n },\n { /* polymorphic variant */\n className: 'type',\n begin: '`[A-Z][\\\\w\\']*'\n },\n { /* module or constructor */\n className: 'type',\n begin: '\\\\b[A-Z][\\\\w\\']*',\n relevance: 0\n },\n { /* don't color identifiers, but safely catch all identifiers with ' */\n begin: '[a-z_]\\\\w*\\'[\\\\w\\']*' },\n hljs.inherit(hljs.APOS_STRING_MODE, {\n className: 'string',\n relevance: 0\n }),\n hljs.inherit(hljs.QUOTE_STRING_MODE, { illegal: null }),\n {\n className: 'number',\n begin:\n '\\\\b(0[xX][a-fA-F0-9_]+[Lln]?|'\n + '0[oO][0-7_]+[Lln]?|'\n + '0[bB][01_]+[Lln]?|'\n + '[0-9][0-9_]*([Lln]|(\\\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)',\n relevance: 0\n },\n { begin: /[-=]>/ // relevance booster\n }\n ]\n };\n}\n\nmodule.exports = sml;\n","/*\nLanguage: SQF\nAuthor: Søren Enevoldsen <senevoldsen90@gmail.com>\nContributors: Marvin Saignat <contact@zgmrvn.com>, Dedmen Miller <dedmen@dedmen.de>\nDescription: Scripting language for the Arma game series\nWebsite: https://community.bistudio.com/wiki/SQF_syntax\nCategory: scripting\nLast update: 28.03.2021, Arma 3 v2.02\n*/\n\nfunction sqf(hljs) {\n // In SQF, a variable start with _\n const VARIABLE = {\n className: 'variable',\n begin: /\\b_+[a-zA-Z]\\w*/\n };\n\n // In SQF, a function should fit myTag_fnc_myFunction pattern\n // https://community.bistudio.com/wiki/Functions_Library_(Arma_3)#Adding_a_Function\n const FUNCTION = {\n className: 'title',\n begin: /[a-zA-Z]\\w+_fnc_\\w+/\n };\n\n // In SQF strings, quotes matching the start are escaped by adding a consecutive.\n // Example of single escaped quotes: \" \"\" \" and ' '' '.\n const STRINGS = {\n className: 'string',\n variants: [\n {\n begin: '\"',\n end: '\"',\n contains: [\n {\n begin: '\"\"',\n relevance: 0\n }\n ]\n },\n {\n begin: '\\'',\n end: '\\'',\n contains: [\n {\n begin: '\\'\\'',\n relevance: 0\n }\n ]\n }\n ]\n };\n\n const KEYWORDS = [\n 'case',\n 'catch',\n 'default',\n 'do',\n 'else',\n 'exit',\n 'exitWith',\n 'for',\n 'forEach',\n 'from',\n 'if',\n 'private',\n 'switch',\n 'then',\n 'throw',\n 'to',\n 'try',\n 'waitUntil',\n 'while',\n 'with'\n ];\n\n const LITERAL = [\n 'blufor',\n 'civilian',\n 'configNull',\n 'controlNull',\n 'displayNull',\n 'east',\n 'endl',\n 'false',\n 'grpNull',\n 'independent',\n 'lineBreak',\n 'locationNull',\n 'nil',\n 'objNull',\n 'opfor',\n 'pi',\n 'resistance',\n 'scriptNull',\n 'sideAmbientLife',\n 'sideEmpty',\n 'sideLogic',\n 'sideUnknown',\n 'taskNull',\n 'teamMemberNull',\n 'true',\n 'west'\n ];\n\n const BUILT_IN = [\n 'abs',\n 'accTime',\n 'acos',\n 'action',\n 'actionIDs',\n 'actionKeys',\n 'actionKeysImages',\n 'actionKeysNames',\n 'actionKeysNamesArray',\n 'actionName',\n 'actionParams',\n 'activateAddons',\n 'activatedAddons',\n 'activateKey',\n 'add3DENConnection',\n 'add3DENEventHandler',\n 'add3DENLayer',\n 'addAction',\n 'addBackpack',\n 'addBackpackCargo',\n 'addBackpackCargoGlobal',\n 'addBackpackGlobal',\n 'addBinocularItem',\n 'addCamShake',\n 'addCuratorAddons',\n 'addCuratorCameraArea',\n 'addCuratorEditableObjects',\n 'addCuratorEditingArea',\n 'addCuratorPoints',\n 'addEditorObject',\n 'addEventHandler',\n 'addForce',\n 'addForceGeneratorRTD',\n 'addGoggles',\n 'addGroupIcon',\n 'addHandgunItem',\n 'addHeadgear',\n 'addItem',\n 'addItemCargo',\n 'addItemCargoGlobal',\n 'addItemPool',\n 'addItemToBackpack',\n 'addItemToUniform',\n 'addItemToVest',\n 'addLiveStats',\n 'addMagazine',\n 'addMagazineAmmoCargo',\n 'addMagazineCargo',\n 'addMagazineCargoGlobal',\n 'addMagazineGlobal',\n 'addMagazinePool',\n 'addMagazines',\n 'addMagazineTurret',\n 'addMenu',\n 'addMenuItem',\n 'addMissionEventHandler',\n 'addMPEventHandler',\n 'addMusicEventHandler',\n 'addonFiles',\n 'addOwnedMine',\n 'addPlayerScores',\n 'addPrimaryWeaponItem',\n 'addPublicVariableEventHandler',\n 'addRating',\n 'addResources',\n 'addScore',\n 'addScoreSide',\n 'addSecondaryWeaponItem',\n 'addSwitchableUnit',\n 'addTeamMember',\n 'addToRemainsCollector',\n 'addTorque',\n 'addUniform',\n 'addVehicle',\n 'addVest',\n 'addWaypoint',\n 'addWeapon',\n 'addWeaponCargo',\n 'addWeaponCargoGlobal',\n 'addWeaponGlobal',\n 'addWeaponItem',\n 'addWeaponPool',\n 'addWeaponTurret',\n 'addWeaponWithAttachmentsCargo',\n 'addWeaponWithAttachmentsCargoGlobal',\n 'admin',\n 'agent',\n 'agents',\n 'AGLToASL',\n 'aimedAtTarget',\n 'aimPos',\n 'airDensityCurveRTD',\n 'airDensityRTD',\n 'airplaneThrottle',\n 'airportSide',\n 'AISFinishHeal',\n 'alive',\n 'all3DENEntities',\n 'allActiveTitleEffects',\n 'allAddonsInfo',\n 'allAirports',\n 'allControls',\n 'allCurators',\n 'allCutLayers',\n 'allDead',\n 'allDeadMen',\n 'allDiarySubjects',\n 'allDisplays',\n 'allGroups',\n 'allMapMarkers',\n 'allMines',\n 'allMissionObjects',\n 'allow3DMode',\n 'allowCrewInImmobile',\n 'allowCuratorLogicIgnoreAreas',\n 'allowDamage',\n 'allowDammage',\n 'allowFileOperations',\n 'allowFleeing',\n 'allowGetIn',\n 'allowSprint',\n 'allPlayers',\n 'allSimpleObjects',\n 'allSites',\n 'allTurrets',\n 'allUnits',\n 'allUnitsUAV',\n 'allVariables',\n 'ammo',\n 'ammoOnPylon',\n 'and',\n 'animate',\n 'animateBay',\n 'animateDoor',\n 'animatePylon',\n 'animateSource',\n 'animationNames',\n 'animationPhase',\n 'animationSourcePhase',\n 'animationState',\n 'apertureParams',\n 'append',\n 'apply',\n 'armoryPoints',\n 'arrayIntersect',\n 'asin',\n 'ASLToAGL',\n 'ASLToATL',\n 'assert',\n 'assignAsCargo',\n 'assignAsCargoIndex',\n 'assignAsCommander',\n 'assignAsDriver',\n 'assignAsGunner',\n 'assignAsTurret',\n 'assignCurator',\n 'assignedCargo',\n 'assignedCommander',\n 'assignedDriver',\n 'assignedGunner',\n 'assignedItems',\n 'assignedTarget',\n 'assignedTeam',\n 'assignedVehicle',\n 'assignedVehicleRole',\n 'assignItem',\n 'assignTeam',\n 'assignToAirport',\n 'atan',\n 'atan2',\n 'atg',\n 'ATLToASL',\n 'attachedObject',\n 'attachedObjects',\n 'attachedTo',\n 'attachObject',\n 'attachTo',\n 'attackEnabled',\n 'backpack',\n 'backpackCargo',\n 'backpackContainer',\n 'backpackItems',\n 'backpackMagazines',\n 'backpackSpaceFor',\n 'batteryChargeRTD',\n 'behaviour',\n 'benchmark',\n 'bezierInterpolation',\n 'binocular',\n 'binocularItems',\n 'binocularMagazine',\n 'boundingBox',\n 'boundingBoxReal',\n 'boundingCenter',\n 'break',\n 'breakOut',\n 'breakTo',\n 'breakWith',\n 'briefingName',\n 'buildingExit',\n 'buildingPos',\n 'buldozer_EnableRoadDiag',\n 'buldozer_IsEnabledRoadDiag',\n 'buldozer_LoadNewRoads',\n 'buldozer_reloadOperMap',\n 'buttonAction',\n 'buttonSetAction',\n 'cadetMode',\n 'calculatePath',\n 'calculatePlayerVisibilityByFriendly',\n 'call',\n 'callExtension',\n 'camCommand',\n 'camCommit',\n 'camCommitPrepared',\n 'camCommitted',\n 'camConstuctionSetParams',\n 'camCreate',\n 'camDestroy',\n 'cameraEffect',\n 'cameraEffectEnableHUD',\n 'cameraInterest',\n 'cameraOn',\n 'cameraView',\n 'campaignConfigFile',\n 'camPreload',\n 'camPreloaded',\n 'camPrepareBank',\n 'camPrepareDir',\n 'camPrepareDive',\n 'camPrepareFocus',\n 'camPrepareFov',\n 'camPrepareFovRange',\n 'camPreparePos',\n 'camPrepareRelPos',\n 'camPrepareTarget',\n 'camSetBank',\n 'camSetDir',\n 'camSetDive',\n 'camSetFocus',\n 'camSetFov',\n 'camSetFovRange',\n 'camSetPos',\n 'camSetRelPos',\n 'camSetTarget',\n 'camTarget',\n 'camUseNVG',\n 'canAdd',\n 'canAddItemToBackpack',\n 'canAddItemToUniform',\n 'canAddItemToVest',\n 'cancelSimpleTaskDestination',\n 'canFire',\n 'canMove',\n 'canSlingLoad',\n 'canStand',\n 'canSuspend',\n 'canTriggerDynamicSimulation',\n 'canUnloadInCombat',\n 'canVehicleCargo',\n 'captive',\n 'captiveNum',\n 'cbChecked',\n 'cbSetChecked',\n 'ceil',\n 'channelEnabled',\n 'cheatsEnabled',\n 'checkAIFeature',\n 'checkVisibility',\n 'className',\n 'clear3DENAttribute',\n 'clear3DENInventory',\n 'clearAllItemsFromBackpack',\n 'clearBackpackCargo',\n 'clearBackpackCargoGlobal',\n 'clearForcesRTD',\n 'clearGroupIcons',\n 'clearItemCargo',\n 'clearItemCargoGlobal',\n 'clearItemPool',\n 'clearMagazineCargo',\n 'clearMagazineCargoGlobal',\n 'clearMagazinePool',\n 'clearOverlay',\n 'clearRadio',\n 'clearVehicleInit',\n 'clearWeaponCargo',\n 'clearWeaponCargoGlobal',\n 'clearWeaponPool',\n 'clientOwner',\n 'closeDialog',\n 'closeDisplay',\n 'closeOverlay',\n 'collapseObjectTree',\n 'collect3DENHistory',\n 'collectiveRTD',\n 'combatBehaviour',\n 'combatMode',\n 'commandArtilleryFire',\n 'commandChat',\n 'commander',\n 'commandFire',\n 'commandFollow',\n 'commandFSM',\n 'commandGetOut',\n 'commandingMenu',\n 'commandMove',\n 'commandRadio',\n 'commandStop',\n 'commandSuppressiveFire',\n 'commandTarget',\n 'commandWatch',\n 'comment',\n 'commitOverlay',\n 'compile',\n 'compileFinal',\n 'compileScript',\n 'completedFSM',\n 'composeText',\n 'configClasses',\n 'configFile',\n 'configHierarchy',\n 'configName',\n 'configOf',\n 'configProperties',\n 'configSourceAddonList',\n 'configSourceMod',\n 'configSourceModList',\n 'confirmSensorTarget',\n 'connectTerminalToUAV',\n 'connectToServer',\n 'continue',\n 'continueWith',\n 'controlsGroupCtrl',\n 'copyFromClipboard',\n 'copyToClipboard',\n 'copyWaypoints',\n 'cos',\n 'count',\n 'countEnemy',\n 'countFriendly',\n 'countSide',\n 'countType',\n 'countUnknown',\n 'create3DENComposition',\n 'create3DENEntity',\n 'createAgent',\n 'createCenter',\n 'createDialog',\n 'createDiaryLink',\n 'createDiaryRecord',\n 'createDiarySubject',\n 'createDisplay',\n 'createGearDialog',\n 'createGroup',\n 'createGuardedPoint',\n 'createHashMap',\n 'createHashMapFromArray',\n 'createLocation',\n 'createMarker',\n 'createMarkerLocal',\n 'createMenu',\n 'createMine',\n 'createMissionDisplay',\n 'createMPCampaignDisplay',\n 'createSimpleObject',\n 'createSimpleTask',\n 'createSite',\n 'createSoundSource',\n 'createTarget',\n 'createTask',\n 'createTeam',\n 'createTrigger',\n 'createUnit',\n 'createVehicle',\n 'createVehicleCrew',\n 'createVehicleLocal',\n 'crew',\n 'ctAddHeader',\n 'ctAddRow',\n 'ctClear',\n 'ctCurSel',\n 'ctData',\n 'ctFindHeaderRows',\n 'ctFindRowHeader',\n 'ctHeaderControls',\n 'ctHeaderCount',\n 'ctRemoveHeaders',\n 'ctRemoveRows',\n 'ctrlActivate',\n 'ctrlAddEventHandler',\n 'ctrlAngle',\n 'ctrlAnimateModel',\n 'ctrlAnimationPhaseModel',\n 'ctrlAutoScrollDelay',\n 'ctrlAutoScrollRewind',\n 'ctrlAutoScrollSpeed',\n 'ctrlChecked',\n 'ctrlClassName',\n 'ctrlCommit',\n 'ctrlCommitted',\n 'ctrlCreate',\n 'ctrlDelete',\n 'ctrlEnable',\n 'ctrlEnabled',\n 'ctrlFade',\n 'ctrlFontHeight',\n 'ctrlHTMLLoaded',\n 'ctrlIDC',\n 'ctrlIDD',\n 'ctrlMapAnimAdd',\n 'ctrlMapAnimClear',\n 'ctrlMapAnimCommit',\n 'ctrlMapAnimDone',\n 'ctrlMapCursor',\n 'ctrlMapMouseOver',\n 'ctrlMapScale',\n 'ctrlMapScreenToWorld',\n 'ctrlMapWorldToScreen',\n 'ctrlModel',\n 'ctrlModelDirAndUp',\n 'ctrlModelScale',\n 'ctrlMousePosition',\n 'ctrlParent',\n 'ctrlParentControlsGroup',\n 'ctrlPosition',\n 'ctrlRemoveAllEventHandlers',\n 'ctrlRemoveEventHandler',\n 'ctrlScale',\n 'ctrlScrollValues',\n 'ctrlSetActiveColor',\n 'ctrlSetAngle',\n 'ctrlSetAutoScrollDelay',\n 'ctrlSetAutoScrollRewind',\n 'ctrlSetAutoScrollSpeed',\n 'ctrlSetBackgroundColor',\n 'ctrlSetChecked',\n 'ctrlSetDisabledColor',\n 'ctrlSetEventHandler',\n 'ctrlSetFade',\n 'ctrlSetFocus',\n 'ctrlSetFont',\n 'ctrlSetFontH1',\n 'ctrlSetFontH1B',\n 'ctrlSetFontH2',\n 'ctrlSetFontH2B',\n 'ctrlSetFontH3',\n 'ctrlSetFontH3B',\n 'ctrlSetFontH4',\n 'ctrlSetFontH4B',\n 'ctrlSetFontH5',\n 'ctrlSetFontH5B',\n 'ctrlSetFontH6',\n 'ctrlSetFontH6B',\n 'ctrlSetFontHeight',\n 'ctrlSetFontHeightH1',\n 'ctrlSetFontHeightH2',\n 'ctrlSetFontHeightH3',\n 'ctrlSetFontHeightH4',\n 'ctrlSetFontHeightH5',\n 'ctrlSetFontHeightH6',\n 'ctrlSetFontHeightSecondary',\n 'ctrlSetFontP',\n 'ctrlSetFontPB',\n 'ctrlSetFontSecondary',\n 'ctrlSetForegroundColor',\n 'ctrlSetModel',\n 'ctrlSetModelDirAndUp',\n 'ctrlSetModelScale',\n 'ctrlSetMousePosition',\n 'ctrlSetPixelPrecision',\n 'ctrlSetPosition',\n 'ctrlSetPositionH',\n 'ctrlSetPositionW',\n 'ctrlSetPositionX',\n 'ctrlSetPositionY',\n 'ctrlSetScale',\n 'ctrlSetScrollValues',\n 'ctrlSetStructuredText',\n 'ctrlSetText',\n 'ctrlSetTextColor',\n 'ctrlSetTextColorSecondary',\n 'ctrlSetTextSecondary',\n 'ctrlSetTextSelection',\n 'ctrlSetTooltip',\n 'ctrlSetTooltipColorBox',\n 'ctrlSetTooltipColorShade',\n 'ctrlSetTooltipColorText',\n 'ctrlSetURL',\n 'ctrlShow',\n 'ctrlShown',\n 'ctrlStyle',\n 'ctrlText',\n 'ctrlTextColor',\n 'ctrlTextHeight',\n 'ctrlTextSecondary',\n 'ctrlTextSelection',\n 'ctrlTextWidth',\n 'ctrlTooltip',\n 'ctrlType',\n 'ctrlURL',\n 'ctrlVisible',\n 'ctRowControls',\n 'ctRowCount',\n 'ctSetCurSel',\n 'ctSetData',\n 'ctSetHeaderTemplate',\n 'ctSetRowTemplate',\n 'ctSetValue',\n 'ctValue',\n 'curatorAddons',\n 'curatorCamera',\n 'curatorCameraArea',\n 'curatorCameraAreaCeiling',\n 'curatorCoef',\n 'curatorEditableObjects',\n 'curatorEditingArea',\n 'curatorEditingAreaType',\n 'curatorMouseOver',\n 'curatorPoints',\n 'curatorRegisteredObjects',\n 'curatorSelected',\n 'curatorWaypointCost',\n 'current3DENOperation',\n 'currentChannel',\n 'currentCommand',\n 'currentMagazine',\n 'currentMagazineDetail',\n 'currentMagazineDetailTurret',\n 'currentMagazineTurret',\n 'currentMuzzle',\n 'currentNamespace',\n 'currentPilot',\n 'currentTask',\n 'currentTasks',\n 'currentThrowable',\n 'currentVisionMode',\n 'currentWaypoint',\n 'currentWeapon',\n 'currentWeaponMode',\n 'currentWeaponTurret',\n 'currentZeroing',\n 'cursorObject',\n 'cursorTarget',\n 'customChat',\n 'customRadio',\n 'customWaypointPosition',\n 'cutFadeOut',\n 'cutObj',\n 'cutRsc',\n 'cutText',\n 'damage',\n 'date',\n 'dateToNumber',\n 'daytime',\n 'deActivateKey',\n 'debriefingText',\n 'debugFSM',\n 'debugLog',\n 'decayGraphValues',\n 'deg',\n 'delete3DENEntities',\n 'deleteAt',\n 'deleteCenter',\n 'deleteCollection',\n 'deleteEditorObject',\n 'deleteGroup',\n 'deleteGroupWhenEmpty',\n 'deleteIdentity',\n 'deleteLocation',\n 'deleteMarker',\n 'deleteMarkerLocal',\n 'deleteRange',\n 'deleteResources',\n 'deleteSite',\n 'deleteStatus',\n 'deleteTarget',\n 'deleteTeam',\n 'deleteVehicle',\n 'deleteVehicleCrew',\n 'deleteWaypoint',\n 'detach',\n 'detectedMines',\n 'diag_activeMissionFSMs',\n 'diag_activeScripts',\n 'diag_activeSQSScripts',\n 'diag_captureFrameToFile',\n 'diag_captureSlowFrame',\n 'diag_deltaTime',\n 'diag_drawMode',\n 'diag_enable',\n 'diag_enabled',\n 'diag_fps',\n 'diag_fpsMin',\n 'diag_frameNo',\n 'diag_list',\n 'diag_mergeConfigFile',\n 'diag_scope',\n 'diag_activeSQFScripts',\n 'diag_allMissionEventHandlers',\n 'diag_captureFrame',\n 'diag_codePerformance',\n 'diag_dumpCalltraceToLog',\n 'diag_dumpTerrainSynth',\n 'diag_dynamicSimulationEnd',\n 'diag_exportConfig',\n 'diag_exportTerrainSVG',\n 'diag_lightNewLoad',\n 'diag_localized',\n 'diag_log',\n 'diag_logSlowFrame',\n 'diag_recordTurretLimits',\n 'diag_resetShapes',\n 'diag_setLightNew',\n 'diag_tickTime',\n 'diag_toggle',\n 'dialog',\n 'diaryRecordNull',\n 'diarySubjectExists',\n 'didJIP',\n 'didJIPOwner',\n 'difficulty',\n 'difficultyEnabled',\n 'difficultyEnabledRTD',\n 'difficultyOption',\n 'direction',\n 'directSay',\n 'disableAI',\n 'disableCollisionWith',\n 'disableConversation',\n 'disableDebriefingStats',\n 'disableMapIndicators',\n 'disableNVGEquipment',\n 'disableRemoteSensors',\n 'disableSerialization',\n 'disableTIEquipment',\n 'disableUAVConnectability',\n 'disableUserInput',\n 'displayAddEventHandler',\n 'displayCtrl',\n 'displayParent',\n 'displayRemoveAllEventHandlers',\n 'displayRemoveEventHandler',\n 'displaySetEventHandler',\n 'dissolveTeam',\n 'distance',\n 'distance2D',\n 'distanceSqr',\n 'distributionRegion',\n 'do3DENAction',\n 'doArtilleryFire',\n 'doFire',\n 'doFollow',\n 'doFSM',\n 'doGetOut',\n 'doMove',\n 'doorPhase',\n 'doStop',\n 'doSuppressiveFire',\n 'doTarget',\n 'doWatch',\n 'drawArrow',\n 'drawEllipse',\n 'drawIcon',\n 'drawIcon3D',\n 'drawLine',\n 'drawLine3D',\n 'drawLink',\n 'drawLocation',\n 'drawPolygon',\n 'drawRectangle',\n 'drawTriangle',\n 'driver',\n 'drop',\n 'dynamicSimulationDistance',\n 'dynamicSimulationDistanceCoef',\n 'dynamicSimulationEnabled',\n 'dynamicSimulationSystemEnabled',\n 'echo',\n 'edit3DENMissionAttributes',\n 'editObject',\n 'editorSetEventHandler',\n 'effectiveCommander',\n 'elevatePeriscope',\n 'emptyPositions',\n 'enableAI',\n 'enableAIFeature',\n 'enableAimPrecision',\n 'enableAttack',\n 'enableAudioFeature',\n 'enableAutoStartUpRTD',\n 'enableAutoTrimRTD',\n 'enableCamShake',\n 'enableCaustics',\n 'enableChannel',\n 'enableCollisionWith',\n 'enableCopilot',\n 'enableDebriefingStats',\n 'enableDiagLegend',\n 'enableDynamicSimulation',\n 'enableDynamicSimulationSystem',\n 'enableEndDialog',\n 'enableEngineArtillery',\n 'enableEnvironment',\n 'enableFatigue',\n 'enableGunLights',\n 'enableInfoPanelComponent',\n 'enableIRLasers',\n 'enableMimics',\n 'enablePersonTurret',\n 'enableRadio',\n 'enableReload',\n 'enableRopeAttach',\n 'enableSatNormalOnDetail',\n 'enableSaving',\n 'enableSentences',\n 'enableSimulation',\n 'enableSimulationGlobal',\n 'enableStamina',\n 'enableStressDamage',\n 'enableTeamSwitch',\n 'enableTraffic',\n 'enableUAVConnectability',\n 'enableUAVWaypoints',\n 'enableVehicleCargo',\n 'enableVehicleSensor',\n 'enableWeaponDisassembly',\n 'endLoadingScreen',\n 'endMission',\n 'enemy',\n 'engineOn',\n 'enginesIsOnRTD',\n 'enginesPowerRTD',\n 'enginesRpmRTD',\n 'enginesTorqueRTD',\n 'entities',\n 'environmentEnabled',\n 'environmentVolume',\n 'estimatedEndServerTime',\n 'estimatedTimeLeft',\n 'evalObjectArgument',\n 'everyBackpack',\n 'everyContainer',\n 'exec',\n 'execEditorScript',\n 'execFSM',\n 'execVM',\n 'exp',\n 'expectedDestination',\n 'exportJIPMessages',\n 'exportLandscapeXYZ',\n 'eyeDirection',\n 'eyePos',\n 'face',\n 'faction',\n 'fadeEnvironment',\n 'fadeMusic',\n 'fadeRadio',\n 'fadeSound',\n 'fadeSpeech',\n 'failMission',\n 'fileExists',\n 'fillWeaponsFromPool',\n 'find',\n 'findCover',\n 'findDisplay',\n 'findEditorObject',\n 'findEmptyPosition',\n 'findEmptyPositionReady',\n 'findIf',\n 'findNearestEnemy',\n 'finishMissionInit',\n 'finite',\n 'fire',\n 'fireAtTarget',\n 'firstBackpack',\n 'flag',\n 'flagAnimationPhase',\n 'flagOwner',\n 'flagSide',\n 'flagTexture',\n 'flatten',\n 'fleeing',\n 'floor',\n 'flyInHeight',\n 'flyInHeightASL',\n 'focusedCtrl',\n 'fog',\n 'fogForecast',\n 'fogParams',\n 'forceAddUniform',\n 'forceAtPositionRTD',\n 'forceCadetDifficulty',\n 'forcedMap',\n 'forceEnd',\n 'forceFlagTexture',\n 'forceFollowRoad',\n 'forceGeneratorRTD',\n 'forceMap',\n 'forceRespawn',\n 'forceSpeed',\n 'forceUnicode',\n 'forceWalk',\n 'forceWeaponFire',\n 'forceWeatherChange',\n 'forEachMember',\n 'forEachMemberAgent',\n 'forEachMemberTeam',\n 'forgetTarget',\n 'format',\n 'formation',\n 'formationDirection',\n 'formationLeader',\n 'formationMembers',\n 'formationPosition',\n 'formationTask',\n 'formatText',\n 'formLeader',\n 'freeLook',\n 'friendly',\n 'fromEditor',\n 'fuel',\n 'fullCrew',\n 'gearIDCAmmoCount',\n 'gearSlotAmmoCount',\n 'gearSlotData',\n 'get',\n 'get3DENActionState',\n 'get3DENAttribute',\n 'get3DENCamera',\n 'get3DENConnections',\n 'get3DENEntity',\n 'get3DENEntityID',\n 'get3DENGrid',\n 'get3DENIconsVisible',\n 'get3DENLayerEntities',\n 'get3DENLinesVisible',\n 'get3DENMissionAttribute',\n 'get3DENMouseOver',\n 'get3DENSelected',\n 'getAimingCoef',\n 'getAllEnvSoundControllers',\n 'getAllHitPointsDamage',\n 'getAllOwnedMines',\n 'getAllPylonsInfo',\n 'getAllSoundControllers',\n 'getAllUnitTraits',\n 'getAmmoCargo',\n 'getAnimAimPrecision',\n 'getAnimSpeedCoef',\n 'getArray',\n 'getArtilleryAmmo',\n 'getArtilleryComputerSettings',\n 'getArtilleryETA',\n 'getAssetDLCInfo',\n 'getAssignedCuratorLogic',\n 'getAssignedCuratorUnit',\n 'getAttackTarget',\n 'getAudioOptionVolumes',\n 'getBackpackCargo',\n 'getBleedingRemaining',\n 'getBurningValue',\n 'getCalculatePlayerVisibilityByFriendly',\n 'getCameraViewDirection',\n 'getCargoIndex',\n 'getCenterOfMass',\n 'getClientState',\n 'getClientStateNumber',\n 'getCompatiblePylonMagazines',\n 'getConnectedUAV',\n 'getContainerMaxLoad',\n 'getCursorObjectParams',\n 'getCustomAimCoef',\n 'getCustomSoundController',\n 'getCustomSoundControllerCount',\n 'getDammage',\n 'getDescription',\n 'getDir',\n 'getDirVisual',\n 'getDiverState',\n 'getDLCAssetsUsage',\n 'getDLCAssetsUsageByName',\n 'getDLCs',\n 'getDLCUsageTime',\n 'getEditorCamera',\n 'getEditorMode',\n 'getEditorObjectScope',\n 'getElevationOffset',\n 'getEnvSoundController',\n 'getFatigue',\n 'getFieldManualStartPage',\n 'getForcedFlagTexture',\n 'getFriend',\n 'getFSMVariable',\n 'getFuelCargo',\n 'getGraphValues',\n 'getGroupIcon',\n 'getGroupIconParams',\n 'getGroupIcons',\n 'getHideFrom',\n 'getHit',\n 'getHitIndex',\n 'getHitPointDamage',\n 'getItemCargo',\n 'getLighting',\n 'getLightingAt',\n 'getLoadedModsInfo',\n 'getMagazineCargo',\n 'getMarkerColor',\n 'getMarkerPos',\n 'getMarkerSize',\n 'getMarkerType',\n 'getMass',\n 'getMissionConfig',\n 'getMissionConfigValue',\n 'getMissionDLCs',\n 'getMissionLayerEntities',\n 'getMissionLayers',\n 'getMissionPath',\n 'getModelInfo',\n 'getMousePosition',\n 'getMusicPlayedTime',\n 'getNumber',\n 'getObjectArgument',\n 'getObjectChildren',\n 'getObjectDLC',\n 'getObjectFOV',\n 'getObjectMaterials',\n 'getObjectProxy',\n 'getObjectScale',\n 'getObjectTextures',\n 'getObjectType',\n 'getObjectViewDistance',\n 'getOrDefault',\n 'getOxygenRemaining',\n 'getPersonUsedDLCs',\n 'getPilotCameraDirection',\n 'getPilotCameraPosition',\n 'getPilotCameraRotation',\n 'getPilotCameraTarget',\n 'getPlateNumber',\n 'getPlayerChannel',\n 'getPlayerID',\n 'getPlayerScores',\n 'getPlayerUID',\n 'getPlayerUIDOld',\n 'getPlayerVoNVolume',\n 'getPos',\n 'getPosASL',\n 'getPosASLVisual',\n 'getPosASLW',\n 'getPosATL',\n 'getPosATLVisual',\n 'getPosVisual',\n 'getPosWorld',\n 'getPosWorldVisual',\n 'getPylonMagazines',\n 'getRelDir',\n 'getRelPos',\n 'getRemoteSensorsDisabled',\n 'getRepairCargo',\n 'getResolution',\n 'getRoadInfo',\n 'getRotorBrakeRTD',\n 'getShadowDistance',\n 'getShotParents',\n 'getSlingLoad',\n 'getSoundController',\n 'getSoundControllerResult',\n 'getSpeed',\n 'getStamina',\n 'getStatValue',\n 'getSteamFriendsServers',\n 'getSubtitleOptions',\n 'getSuppression',\n 'getTerrainGrid',\n 'getTerrainHeightASL',\n 'getText',\n 'getTextRaw',\n 'getTextWidth',\n 'getTotalDLCUsageTime',\n 'getTrimOffsetRTD',\n 'getUnitLoadout',\n 'getUnitTrait',\n 'getUserMFDText',\n 'getUserMFDValue',\n 'getVariable',\n 'getVehicleCargo',\n 'getVehicleTIPars',\n 'getWeaponCargo',\n 'getWeaponSway',\n 'getWingsOrientationRTD',\n 'getWingsPositionRTD',\n 'getWorld',\n 'getWPPos',\n 'glanceAt',\n 'globalChat',\n 'globalRadio',\n 'goggles',\n 'goto',\n 'group',\n 'groupChat',\n 'groupFromNetId',\n 'groupIconSelectable',\n 'groupIconsVisible',\n 'groupId',\n 'groupOwner',\n 'groupRadio',\n 'groupSelectedUnits',\n 'groupSelectUnit',\n 'gunner',\n 'gusts',\n 'halt',\n 'handgunItems',\n 'handgunMagazine',\n 'handgunWeapon',\n 'handsHit',\n 'hasInterface',\n 'hasPilotCamera',\n 'hasWeapon',\n 'hcAllGroups',\n 'hcGroupParams',\n 'hcLeader',\n 'hcRemoveAllGroups',\n 'hcRemoveGroup',\n 'hcSelected',\n 'hcSelectGroup',\n 'hcSetGroup',\n 'hcShowBar',\n 'hcShownBar',\n 'headgear',\n 'hideBehindScripted',\n 'hideBody',\n 'hideObject',\n 'hideObjectGlobal',\n 'hideSelection',\n 'hierarchyObjectsCount',\n 'hint',\n 'hintC',\n 'hintCadet',\n 'hintSilent',\n 'hmd',\n 'hostMission',\n 'htmlLoad',\n 'HUDMovementLevels',\n 'humidity',\n 'image',\n 'importAllGroups',\n 'importance',\n 'in',\n 'inArea',\n 'inAreaArray',\n 'incapacitatedState',\n 'inflame',\n 'inflamed',\n 'infoPanel',\n 'infoPanelComponentEnabled',\n 'infoPanelComponents',\n 'infoPanels',\n 'inGameUISetEventHandler',\n 'inheritsFrom',\n 'initAmbientLife',\n 'inPolygon',\n 'inputAction',\n 'inRangeOfArtillery',\n 'insert',\n 'insertEditorObject',\n 'intersect',\n 'is3DEN',\n 'is3DENMultiplayer',\n 'is3DENPreview',\n 'isAbleToBreathe',\n 'isActionMenuVisible',\n 'isAgent',\n 'isAimPrecisionEnabled',\n 'isArray',\n 'isAutoHoverOn',\n 'isAutonomous',\n 'isAutoStartUpEnabledRTD',\n 'isAutotest',\n 'isAutoTrimOnRTD',\n 'isBleeding',\n 'isBurning',\n 'isClass',\n 'isCollisionLightOn',\n 'isCopilotEnabled',\n 'isDamageAllowed',\n 'isDedicated',\n 'isDLCAvailable',\n 'isEngineOn',\n 'isEqualTo',\n 'isEqualType',\n 'isEqualTypeAll',\n 'isEqualTypeAny',\n 'isEqualTypeArray',\n 'isEqualTypeParams',\n 'isFilePatchingEnabled',\n 'isFinal',\n 'isFlashlightOn',\n 'isFlatEmpty',\n 'isForcedWalk',\n 'isFormationLeader',\n 'isGameFocused',\n 'isGamePaused',\n 'isGroupDeletedWhenEmpty',\n 'isHidden',\n 'isHideBehindScripted',\n 'isInRemainsCollector',\n 'isInstructorFigureEnabled',\n 'isIRLaserOn',\n 'isKeyActive',\n 'isKindOf',\n 'isLaserOn',\n 'isLightOn',\n 'isLocalized',\n 'isManualFire',\n 'isMarkedForCollection',\n 'isMultiplayer',\n 'isMultiplayerSolo',\n 'isNil',\n 'isNotEqualTo',\n 'isNull',\n 'isNumber',\n 'isObjectHidden',\n 'isObjectRTD',\n 'isOnRoad',\n 'isPiPEnabled',\n 'isPlayer',\n 'isRealTime',\n 'isRemoteExecuted',\n 'isRemoteExecutedJIP',\n 'isSensorTargetConfirmed',\n 'isServer',\n 'isShowing3DIcons',\n 'isSimpleObject',\n 'isSprintAllowed',\n 'isStaminaEnabled',\n 'isSteamMission',\n 'isStreamFriendlyUIEnabled',\n 'isStressDamageEnabled',\n 'isText',\n 'isTouchingGround',\n 'isTurnedOut',\n 'isTutHintsEnabled',\n 'isUAVConnectable',\n 'isUAVConnected',\n 'isUIContext',\n 'isUniformAllowed',\n 'isVehicleCargo',\n 'isVehicleRadarOn',\n 'isVehicleSensorEnabled',\n 'isWalking',\n 'isWeaponDeployed',\n 'isWeaponRested',\n 'itemCargo',\n 'items',\n 'itemsWithMagazines',\n 'join',\n 'joinAs',\n 'joinAsSilent',\n 'joinSilent',\n 'joinString',\n 'kbAddDatabase',\n 'kbAddDatabaseTargets',\n 'kbAddTopic',\n 'kbHasTopic',\n 'kbReact',\n 'kbRemoveTopic',\n 'kbTell',\n 'kbWasSaid',\n 'keyImage',\n 'keyName',\n 'keys',\n 'knowsAbout',\n 'land',\n 'landAt',\n 'landResult',\n 'language',\n 'laserTarget',\n 'lbAdd',\n 'lbClear',\n 'lbColor',\n 'lbColorRight',\n 'lbCurSel',\n 'lbData',\n 'lbDelete',\n 'lbIsSelected',\n 'lbPicture',\n 'lbPictureRight',\n 'lbSelection',\n 'lbSetColor',\n 'lbSetColorRight',\n 'lbSetCurSel',\n 'lbSetData',\n 'lbSetPicture',\n 'lbSetPictureColor',\n 'lbSetPictureColorDisabled',\n 'lbSetPictureColorSelected',\n 'lbSetPictureRight',\n 'lbSetPictureRightColor',\n 'lbSetPictureRightColorDisabled',\n 'lbSetPictureRightColorSelected',\n 'lbSetSelectColor',\n 'lbSetSelectColorRight',\n 'lbSetSelected',\n 'lbSetText',\n 'lbSetTextRight',\n 'lbSetTooltip',\n 'lbSetValue',\n 'lbSize',\n 'lbSort',\n 'lbSortByValue',\n 'lbText',\n 'lbTextRight',\n 'lbValue',\n 'leader',\n 'leaderboardDeInit',\n 'leaderboardGetRows',\n 'leaderboardInit',\n 'leaderboardRequestRowsFriends',\n 'leaderboardRequestRowsGlobal',\n 'leaderboardRequestRowsGlobalAroundUser',\n 'leaderboardsRequestUploadScore',\n 'leaderboardsRequestUploadScoreKeepBest',\n 'leaderboardState',\n 'leaveVehicle',\n 'libraryCredits',\n 'libraryDisclaimers',\n 'lifeState',\n 'lightAttachObject',\n 'lightDetachObject',\n 'lightIsOn',\n 'lightnings',\n 'limitSpeed',\n 'linearConversion',\n 'lineIntersects',\n 'lineIntersectsObjs',\n 'lineIntersectsSurfaces',\n 'lineIntersectsWith',\n 'linkItem',\n 'list',\n 'listObjects',\n 'listRemoteTargets',\n 'listVehicleSensors',\n 'ln',\n 'lnbAddArray',\n 'lnbAddColumn',\n 'lnbAddRow',\n 'lnbClear',\n 'lnbColor',\n 'lnbColorRight',\n 'lnbCurSelRow',\n 'lnbData',\n 'lnbDeleteColumn',\n 'lnbDeleteRow',\n 'lnbGetColumnsPosition',\n 'lnbPicture',\n 'lnbPictureRight',\n 'lnbSetColor',\n 'lnbSetColorRight',\n 'lnbSetColumnsPos',\n 'lnbSetCurSelRow',\n 'lnbSetData',\n 'lnbSetPicture',\n 'lnbSetPictureColor',\n 'lnbSetPictureColorRight',\n 'lnbSetPictureColorSelected',\n 'lnbSetPictureColorSelectedRight',\n 'lnbSetPictureRight',\n 'lnbSetText',\n 'lnbSetTextRight',\n 'lnbSetTooltip',\n 'lnbSetValue',\n 'lnbSize',\n 'lnbSort',\n 'lnbSortByValue',\n 'lnbText',\n 'lnbTextRight',\n 'lnbValue',\n 'load',\n 'loadAbs',\n 'loadBackpack',\n 'loadFile',\n 'loadGame',\n 'loadIdentity',\n 'loadMagazine',\n 'loadOverlay',\n 'loadStatus',\n 'loadUniform',\n 'loadVest',\n 'local',\n 'localize',\n 'localNamespace',\n 'locationPosition',\n 'lock',\n 'lockCameraTo',\n 'lockCargo',\n 'lockDriver',\n 'locked',\n 'lockedCargo',\n 'lockedDriver',\n 'lockedInventory',\n 'lockedTurret',\n 'lockIdentity',\n 'lockInventory',\n 'lockTurret',\n 'lockWP',\n 'log',\n 'logEntities',\n 'logNetwork',\n 'logNetworkTerminate',\n 'lookAt',\n 'lookAtPos',\n 'magazineCargo',\n 'magazines',\n 'magazinesAllTurrets',\n 'magazinesAmmo',\n 'magazinesAmmoCargo',\n 'magazinesAmmoFull',\n 'magazinesDetail',\n 'magazinesDetailBackpack',\n 'magazinesDetailUniform',\n 'magazinesDetailVest',\n 'magazinesTurret',\n 'magazineTurretAmmo',\n 'mapAnimAdd',\n 'mapAnimClear',\n 'mapAnimCommit',\n 'mapAnimDone',\n 'mapCenterOnCamera',\n 'mapGridPosition',\n 'markAsFinishedOnSteam',\n 'markerAlpha',\n 'markerBrush',\n 'markerChannel',\n 'markerColor',\n 'markerDir',\n 'markerPolyline',\n 'markerPos',\n 'markerShadow',\n 'markerShape',\n 'markerSize',\n 'markerText',\n 'markerType',\n 'matrixMultiply',\n 'matrixTranspose',\n 'max',\n 'members',\n 'menuAction',\n 'menuAdd',\n 'menuChecked',\n 'menuClear',\n 'menuCollapse',\n 'menuData',\n 'menuDelete',\n 'menuEnable',\n 'menuEnabled',\n 'menuExpand',\n 'menuHover',\n 'menuPicture',\n 'menuSetAction',\n 'menuSetCheck',\n 'menuSetData',\n 'menuSetPicture',\n 'menuSetShortcut',\n 'menuSetText',\n 'menuSetURL',\n 'menuSetValue',\n 'menuShortcut',\n 'menuShortcutText',\n 'menuSize',\n 'menuSort',\n 'menuText',\n 'menuURL',\n 'menuValue',\n 'merge',\n 'min',\n 'mineActive',\n 'mineDetectedBy',\n 'missileTarget',\n 'missileTargetPos',\n 'missionConfigFile',\n 'missionDifficulty',\n 'missionName',\n 'missionNameSource',\n 'missionNamespace',\n 'missionStart',\n 'missionVersion',\n 'mod',\n 'modelToWorld',\n 'modelToWorldVisual',\n 'modelToWorldVisualWorld',\n 'modelToWorldWorld',\n 'modParams',\n 'moonIntensity',\n 'moonPhase',\n 'morale',\n 'move',\n 'move3DENCamera',\n 'moveInAny',\n 'moveInCargo',\n 'moveInCommander',\n 'moveInDriver',\n 'moveInGunner',\n 'moveInTurret',\n 'moveObjectToEnd',\n 'moveOut',\n 'moveTarget',\n 'moveTime',\n 'moveTo',\n 'moveToCompleted',\n 'moveToFailed',\n 'musicVolume',\n 'name',\n 'namedProperties',\n 'nameSound',\n 'nearEntities',\n 'nearestBuilding',\n 'nearestLocation',\n 'nearestLocations',\n 'nearestLocationWithDubbing',\n 'nearestObject',\n 'nearestObjects',\n 'nearestTerrainObjects',\n 'nearObjects',\n 'nearObjectsReady',\n 'nearRoads',\n 'nearSupplies',\n 'nearTargets',\n 'needReload',\n 'netId',\n 'netObjNull',\n 'newOverlay',\n 'nextMenuItemIndex',\n 'nextWeatherChange',\n 'nMenuItems',\n 'not',\n 'numberOfEnginesRTD',\n 'numberToDate',\n 'object',\n 'objectCurators',\n 'objectFromNetId',\n 'objectParent',\n 'objStatus',\n 'onBriefingGear',\n 'onBriefingGroup',\n 'onBriefingNotes',\n 'onBriefingPlan',\n 'onBriefingTeamSwitch',\n 'onCommandModeChanged',\n 'onDoubleClick',\n 'onEachFrame',\n 'onGroupIconClick',\n 'onGroupIconOverEnter',\n 'onGroupIconOverLeave',\n 'onHCGroupSelectionChanged',\n 'onMapSingleClick',\n 'onPlayerConnected',\n 'onPlayerDisconnected',\n 'onPreloadFinished',\n 'onPreloadStarted',\n 'onShowNewObject',\n 'onTeamSwitch',\n 'openCuratorInterface',\n 'openDLCPage',\n 'openDSInterface',\n 'openGPS',\n 'openMap',\n 'openSteamApp',\n 'openYoutubeVideo',\n 'or',\n 'orderGetIn',\n 'overcast',\n 'overcastForecast',\n 'owner',\n 'param',\n 'params',\n 'parseNumber',\n 'parseSimpleArray',\n 'parseText',\n 'parsingNamespace',\n 'particlesQuality',\n 'periscopeElevation',\n 'pickWeaponPool',\n 'pitch',\n 'pixelGrid',\n 'pixelGridBase',\n 'pixelGridNoUIScale',\n 'pixelH',\n 'pixelW',\n 'playableSlotsNumber',\n 'playableUnits',\n 'playAction',\n 'playActionNow',\n 'player',\n 'playerRespawnTime',\n 'playerSide',\n 'playersNumber',\n 'playGesture',\n 'playMission',\n 'playMove',\n 'playMoveNow',\n 'playMusic',\n 'playScriptedMission',\n 'playSound',\n 'playSound3D',\n 'position',\n 'positionCameraToWorld',\n 'posScreenToWorld',\n 'posWorldToScreen',\n 'ppEffectAdjust',\n 'ppEffectCommit',\n 'ppEffectCommitted',\n 'ppEffectCreate',\n 'ppEffectDestroy',\n 'ppEffectEnable',\n 'ppEffectEnabled',\n 'ppEffectForceInNVG',\n 'precision',\n 'preloadCamera',\n 'preloadObject',\n 'preloadSound',\n 'preloadTitleObj',\n 'preloadTitleRsc',\n 'preprocessFile',\n 'preprocessFileLineNumbers',\n 'primaryWeapon',\n 'primaryWeaponItems',\n 'primaryWeaponMagazine',\n 'priority',\n 'processDiaryLink',\n 'processInitCommands',\n 'productVersion',\n 'profileName',\n 'profileNamespace',\n 'profileNameSteam',\n 'progressLoadingScreen',\n 'progressPosition',\n 'progressSetPosition',\n 'publicVariable',\n 'publicVariableClient',\n 'publicVariableServer',\n 'pushBack',\n 'pushBackUnique',\n 'putWeaponPool',\n 'queryItemsPool',\n 'queryMagazinePool',\n 'queryWeaponPool',\n 'rad',\n 'radioChannelAdd',\n 'radioChannelCreate',\n 'radioChannelInfo',\n 'radioChannelRemove',\n 'radioChannelSetCallSign',\n 'radioChannelSetLabel',\n 'radioVolume',\n 'rain',\n 'rainbow',\n 'random',\n 'rank',\n 'rankId',\n 'rating',\n 'rectangular',\n 'registeredTasks',\n 'registerTask',\n 'reload',\n 'reloadEnabled',\n 'remoteControl',\n 'remoteExec',\n 'remoteExecCall',\n 'remoteExecutedOwner',\n 'remove3DENConnection',\n 'remove3DENEventHandler',\n 'remove3DENLayer',\n 'removeAction',\n 'removeAll3DENEventHandlers',\n 'removeAllActions',\n 'removeAllAssignedItems',\n 'removeAllBinocularItems',\n 'removeAllContainers',\n 'removeAllCuratorAddons',\n 'removeAllCuratorCameraAreas',\n 'removeAllCuratorEditingAreas',\n 'removeAllEventHandlers',\n 'removeAllHandgunItems',\n 'removeAllItems',\n 'removeAllItemsWithMagazines',\n 'removeAllMissionEventHandlers',\n 'removeAllMPEventHandlers',\n 'removeAllMusicEventHandlers',\n 'removeAllOwnedMines',\n 'removeAllPrimaryWeaponItems',\n 'removeAllSecondaryWeaponItems',\n 'removeAllWeapons',\n 'removeBackpack',\n 'removeBackpackGlobal',\n 'removeBinocularItem',\n 'removeClothing',\n 'removeCuratorAddons',\n 'removeCuratorCameraArea',\n 'removeCuratorEditableObjects',\n 'removeCuratorEditingArea',\n 'removeDiaryRecord',\n 'removeDiarySubject',\n 'removeDrawIcon',\n 'removeDrawLinks',\n 'removeEventHandler',\n 'removeFromRemainsCollector',\n 'removeGoggles',\n 'removeGroupIcon',\n 'removeHandgunItem',\n 'removeHeadgear',\n 'removeItem',\n 'removeItemFromBackpack',\n 'removeItemFromUniform',\n 'removeItemFromVest',\n 'removeItems',\n 'removeMagazine',\n 'removeMagazineGlobal',\n 'removeMagazines',\n 'removeMagazinesTurret',\n 'removeMagazineTurret',\n 'removeMenuItem',\n 'removeMissionEventHandler',\n 'removeMPEventHandler',\n 'removeMusicEventHandler',\n 'removeOwnedMine',\n 'removePrimaryWeaponItem',\n 'removeSecondaryWeaponItem',\n 'removeSimpleTask',\n 'removeSwitchableUnit',\n 'removeTeamMember',\n 'removeUniform',\n 'removeVest',\n 'removeWeapon',\n 'removeWeaponAttachmentCargo',\n 'removeWeaponCargo',\n 'removeWeaponGlobal',\n 'removeWeaponTurret',\n 'reportRemoteTarget',\n 'requiredVersion',\n 'resetCamShake',\n 'resetSubgroupDirection',\n 'resize',\n 'resources',\n 'respawnVehicle',\n 'restartEditorCamera',\n 'reveal',\n 'revealMine',\n 'reverse',\n 'reversedMouseY',\n 'roadAt',\n 'roadsConnectedTo',\n 'roleDescription',\n 'ropeAttachedObjects',\n 'ropeAttachedTo',\n 'ropeAttachEnabled',\n 'ropeAttachTo',\n 'ropeCreate',\n 'ropeCut',\n 'ropeDestroy',\n 'ropeDetach',\n 'ropeEndPosition',\n 'ropeLength',\n 'ropes',\n 'ropeSegments',\n 'ropeSetCargoMass',\n 'ropeUnwind',\n 'ropeUnwound',\n 'rotorsForcesRTD',\n 'rotorsRpmRTD',\n 'round',\n 'runInitScript',\n 'safeZoneH',\n 'safeZoneW',\n 'safeZoneWAbs',\n 'safeZoneX',\n 'safeZoneXAbs',\n 'safeZoneY',\n 'save3DENInventory',\n 'saveGame',\n 'saveIdentity',\n 'saveJoysticks',\n 'saveOverlay',\n 'saveProfileNamespace',\n 'saveStatus',\n 'saveVar',\n 'savingEnabled',\n 'say',\n 'say2D',\n 'say3D',\n 'scopeName',\n 'score',\n 'scoreSide',\n 'screenshot',\n 'screenToWorld',\n 'scriptDone',\n 'scriptName',\n 'scudState',\n 'secondaryWeapon',\n 'secondaryWeaponItems',\n 'secondaryWeaponMagazine',\n 'select',\n 'selectBestPlaces',\n 'selectDiarySubject',\n 'selectedEditorObjects',\n 'selectEditorObject',\n 'selectionNames',\n 'selectionPosition',\n 'selectLeader',\n 'selectMax',\n 'selectMin',\n 'selectNoPlayer',\n 'selectPlayer',\n 'selectRandom',\n 'selectRandomWeighted',\n 'selectWeapon',\n 'selectWeaponTurret',\n 'sendAUMessage',\n 'sendSimpleCommand',\n 'sendTask',\n 'sendTaskResult',\n 'sendUDPMessage',\n 'serverCommand',\n 'serverCommandAvailable',\n 'serverCommandExecutable',\n 'serverName',\n 'serverTime',\n 'set',\n 'set3DENAttribute',\n 'set3DENAttributes',\n 'set3DENGrid',\n 'set3DENIconsVisible',\n 'set3DENLayer',\n 'set3DENLinesVisible',\n 'set3DENLogicType',\n 'set3DENMissionAttribute',\n 'set3DENMissionAttributes',\n 'set3DENModelsVisible',\n 'set3DENObjectType',\n 'set3DENSelected',\n 'setAccTime',\n 'setActualCollectiveRTD',\n 'setAirplaneThrottle',\n 'setAirportSide',\n 'setAmmo',\n 'setAmmoCargo',\n 'setAmmoOnPylon',\n 'setAnimSpeedCoef',\n 'setAperture',\n 'setApertureNew',\n 'setAPURTD',\n 'setArmoryPoints',\n 'setAttributes',\n 'setAutonomous',\n 'setBatteryChargeRTD',\n 'setBatteryRTD',\n 'setBehaviour',\n 'setBehaviourStrong',\n 'setBleedingRemaining',\n 'setBrakesRTD',\n 'setCameraEffect',\n 'setCameraInterest',\n 'setCamShakeDefParams',\n 'setCamShakeParams',\n 'setCamUseTI',\n 'setCaptive',\n 'setCenterOfMass',\n 'setCollisionLight',\n 'setCombatBehaviour',\n 'setCombatMode',\n 'setCompassOscillation',\n 'setConvoySeparation',\n 'setCuratorCameraAreaCeiling',\n 'setCuratorCoef',\n 'setCuratorEditingAreaType',\n 'setCuratorWaypointCost',\n 'setCurrentChannel',\n 'setCurrentTask',\n 'setCurrentWaypoint',\n 'setCustomAimCoef',\n 'setCustomMissionData',\n 'setCustomSoundController',\n 'setCustomWeightRTD',\n 'setDamage',\n 'setDammage',\n 'setDate',\n 'setDebriefingText',\n 'setDefaultCamera',\n 'setDestination',\n 'setDetailMapBlendPars',\n 'setDiaryRecordText',\n 'setDiarySubjectPicture',\n 'setDir',\n 'setDirection',\n 'setDrawIcon',\n 'setDriveOnPath',\n 'setDropInterval',\n 'setDynamicSimulationDistance',\n 'setDynamicSimulationDistanceCoef',\n 'setEditorMode',\n 'setEditorObjectScope',\n 'setEffectCondition',\n 'setEffectiveCommander',\n 'setEngineRPMRTD',\n 'setEngineRpmRTD',\n 'setFace',\n 'setFaceAnimation',\n 'setFatigue',\n 'setFeatureType',\n 'setFlagAnimationPhase',\n 'setFlagOwner',\n 'setFlagSide',\n 'setFlagTexture',\n 'setFog',\n 'setForceGeneratorRTD',\n 'setFormation',\n 'setFormationTask',\n 'setFormDir',\n 'setFriend',\n 'setFromEditor',\n 'setFSMVariable',\n 'setFuel',\n 'setFuelCargo',\n 'setGroupIcon',\n 'setGroupIconParams',\n 'setGroupIconsSelectable',\n 'setGroupIconsVisible',\n 'setGroupId',\n 'setGroupIdGlobal',\n 'setGroupOwner',\n 'setGusts',\n 'setHideBehind',\n 'setHit',\n 'setHitIndex',\n 'setHitPointDamage',\n 'setHorizonParallaxCoef',\n 'setHUDMovementLevels',\n 'setIdentity',\n 'setImportance',\n 'setInfoPanel',\n 'setLeader',\n 'setLightAmbient',\n 'setLightAttenuation',\n 'setLightBrightness',\n 'setLightColor',\n 'setLightDayLight',\n 'setLightFlareMaxDistance',\n 'setLightFlareSize',\n 'setLightIntensity',\n 'setLightnings',\n 'setLightUseFlare',\n 'setLocalWindParams',\n 'setMagazineTurretAmmo',\n 'setMarkerAlpha',\n 'setMarkerAlphaLocal',\n 'setMarkerBrush',\n 'setMarkerBrushLocal',\n 'setMarkerColor',\n 'setMarkerColorLocal',\n 'setMarkerDir',\n 'setMarkerDirLocal',\n 'setMarkerPolyline',\n 'setMarkerPolylineLocal',\n 'setMarkerPos',\n 'setMarkerPosLocal',\n 'setMarkerShadow',\n 'setMarkerShadowLocal',\n 'setMarkerShape',\n 'setMarkerShapeLocal',\n 'setMarkerSize',\n 'setMarkerSizeLocal',\n 'setMarkerText',\n 'setMarkerTextLocal',\n 'setMarkerType',\n 'setMarkerTypeLocal',\n 'setMass',\n 'setMimic',\n 'setMissileTarget',\n 'setMissileTargetPos',\n 'setMousePosition',\n 'setMusicEffect',\n 'setMusicEventHandler',\n 'setName',\n 'setNameSound',\n 'setObjectArguments',\n 'setObjectMaterial',\n 'setObjectMaterialGlobal',\n 'setObjectProxy',\n 'setObjectScale',\n 'setObjectTexture',\n 'setObjectTextureGlobal',\n 'setObjectViewDistance',\n 'setOvercast',\n 'setOwner',\n 'setOxygenRemaining',\n 'setParticleCircle',\n 'setParticleClass',\n 'setParticleFire',\n 'setParticleParams',\n 'setParticleRandom',\n 'setPilotCameraDirection',\n 'setPilotCameraRotation',\n 'setPilotCameraTarget',\n 'setPilotLight',\n 'setPiPEffect',\n 'setPitch',\n 'setPlateNumber',\n 'setPlayable',\n 'setPlayerRespawnTime',\n 'setPlayerVoNVolume',\n 'setPos',\n 'setPosASL',\n 'setPosASL2',\n 'setPosASLW',\n 'setPosATL',\n 'setPosition',\n 'setPosWorld',\n 'setPylonLoadout',\n 'setPylonsPriority',\n 'setRadioMsg',\n 'setRain',\n 'setRainbow',\n 'setRandomLip',\n 'setRank',\n 'setRectangular',\n 'setRepairCargo',\n 'setRotorBrakeRTD',\n 'setShadowDistance',\n 'setShotParents',\n 'setSide',\n 'setSimpleTaskAlwaysVisible',\n 'setSimpleTaskCustomData',\n 'setSimpleTaskDescription',\n 'setSimpleTaskDestination',\n 'setSimpleTaskTarget',\n 'setSimpleTaskType',\n 'setSimulWeatherLayers',\n 'setSize',\n 'setSkill',\n 'setSlingLoad',\n 'setSoundEffect',\n 'setSpeaker',\n 'setSpeech',\n 'setSpeedMode',\n 'setStamina',\n 'setStaminaScheme',\n 'setStarterRTD',\n 'setStatValue',\n 'setSuppression',\n 'setSystemOfUnits',\n 'setTargetAge',\n 'setTaskMarkerOffset',\n 'setTaskResult',\n 'setTaskState',\n 'setTerrainGrid',\n 'setText',\n 'setThrottleRTD',\n 'setTimeMultiplier',\n 'setTitleEffect',\n 'setToneMapping',\n 'setToneMappingParams',\n 'setTrafficDensity',\n 'setTrafficDistance',\n 'setTrafficGap',\n 'setTrafficSpeed',\n 'setTriggerActivation',\n 'setTriggerArea',\n 'setTriggerInterval',\n 'setTriggerStatements',\n 'setTriggerText',\n 'setTriggerTimeout',\n 'setTriggerType',\n 'setType',\n 'setUnconscious',\n 'setUnitAbility',\n 'setUnitCombatMode',\n 'setUnitLoadout',\n 'setUnitPos',\n 'setUnitPosWeak',\n 'setUnitRank',\n 'setUnitRecoilCoefficient',\n 'setUnitTrait',\n 'setUnloadInCombat',\n 'setUserActionText',\n 'setUserMFDText',\n 'setUserMFDValue',\n 'setVariable',\n 'setVectorDir',\n 'setVectorDirAndUp',\n 'setVectorUp',\n 'setVehicleAmmo',\n 'setVehicleAmmoDef',\n 'setVehicleArmor',\n 'setVehicleCargo',\n 'setVehicleId',\n 'setVehicleInit',\n 'setVehicleLock',\n 'setVehiclePosition',\n 'setVehicleRadar',\n 'setVehicleReceiveRemoteTargets',\n 'setVehicleReportOwnPosition',\n 'setVehicleReportRemoteTargets',\n 'setVehicleTIPars',\n 'setVehicleVarName',\n 'setVelocity',\n 'setVelocityModelSpace',\n 'setVelocityTransformation',\n 'setViewDistance',\n 'setVisibleIfTreeCollapsed',\n 'setWantedRPMRTD',\n 'setWaves',\n 'setWaypointBehaviour',\n 'setWaypointCombatMode',\n 'setWaypointCompletionRadius',\n 'setWaypointDescription',\n 'setWaypointForceBehaviour',\n 'setWaypointFormation',\n 'setWaypointHousePosition',\n 'setWaypointLoiterAltitude',\n 'setWaypointLoiterRadius',\n 'setWaypointLoiterType',\n 'setWaypointName',\n 'setWaypointPosition',\n 'setWaypointScript',\n 'setWaypointSpeed',\n 'setWaypointStatements',\n 'setWaypointTimeout',\n 'setWaypointType',\n 'setWaypointVisible',\n 'setWeaponReloadingTime',\n 'setWeaponZeroing',\n 'setWind',\n 'setWindDir',\n 'setWindForce',\n 'setWindStr',\n 'setWingForceScaleRTD',\n 'setWPPos',\n 'show3DIcons',\n 'showChat',\n 'showCinemaBorder',\n 'showCommandingMenu',\n 'showCompass',\n 'showCuratorCompass',\n 'showGPS',\n 'showHUD',\n 'showLegend',\n 'showMap',\n 'shownArtilleryComputer',\n 'shownChat',\n 'shownCompass',\n 'shownCuratorCompass',\n 'showNewEditorObject',\n 'shownGPS',\n 'shownHUD',\n 'shownMap',\n 'shownPad',\n 'shownRadio',\n 'shownScoretable',\n 'shownUAVFeed',\n 'shownWarrant',\n 'shownWatch',\n 'showPad',\n 'showRadio',\n 'showScoretable',\n 'showSubtitles',\n 'showUAVFeed',\n 'showWarrant',\n 'showWatch',\n 'showWaypoint',\n 'showWaypoints',\n 'side',\n 'sideChat',\n 'sideEmpty',\n 'sideEnemy',\n 'sideFriendly',\n 'sideRadio',\n 'simpleTasks',\n 'simulationEnabled',\n 'simulCloudDensity',\n 'simulCloudOcclusion',\n 'simulInClouds',\n 'simulSetHumidity',\n 'simulWeatherSync',\n 'sin',\n 'size',\n 'sizeOf',\n 'skill',\n 'skillFinal',\n 'skipTime',\n 'sleep',\n 'sliderPosition',\n 'sliderRange',\n 'sliderSetPosition',\n 'sliderSetRange',\n 'sliderSetSpeed',\n 'sliderSpeed',\n 'slingLoadAssistantShown',\n 'soldierMagazines',\n 'someAmmo',\n 'sort',\n 'soundVolume',\n 'spawn',\n 'speaker',\n 'speechVolume',\n 'speed',\n 'speedMode',\n 'splitString',\n 'sqrt',\n 'squadParams',\n 'stance',\n 'startLoadingScreen',\n 'step',\n 'stop',\n 'stopEngineRTD',\n 'stopped',\n 'str',\n 'sunOrMoon',\n 'supportInfo',\n 'suppressFor',\n 'surfaceIsWater',\n 'surfaceNormal',\n 'surfaceTexture',\n 'surfaceType',\n 'swimInDepth',\n 'switchableUnits',\n 'switchAction',\n 'switchCamera',\n 'switchGesture',\n 'switchLight',\n 'switchMove',\n 'synchronizedObjects',\n 'synchronizedTriggers',\n 'synchronizedWaypoints',\n 'synchronizeObjectsAdd',\n 'synchronizeObjectsRemove',\n 'synchronizeTrigger',\n 'synchronizeWaypoint',\n 'systemChat',\n 'systemOfUnits',\n 'systemTime',\n 'systemTimeUTC',\n 'tan',\n 'targetKnowledge',\n 'targets',\n 'targetsAggregate',\n 'targetsQuery',\n 'taskAlwaysVisible',\n 'taskChildren',\n 'taskCompleted',\n 'taskCustomData',\n 'taskDescription',\n 'taskDestination',\n 'taskHint',\n 'taskMarkerOffset',\n 'taskName',\n 'taskParent',\n 'taskResult',\n 'taskState',\n 'taskType',\n 'teamMember',\n 'teamName',\n 'teams',\n 'teamSwitch',\n 'teamSwitchEnabled',\n 'teamType',\n 'terminate',\n 'terrainIntersect',\n 'terrainIntersectASL',\n 'terrainIntersectAtASL',\n 'text',\n 'textLog',\n 'textLogFormat',\n 'tg',\n 'throttleRTD',\n 'time',\n 'timeMultiplier',\n 'titleCut',\n 'titleFadeOut',\n 'titleObj',\n 'titleRsc',\n 'titleText',\n 'toArray',\n 'toFixed',\n 'toLower',\n 'toLowerANSI',\n 'toString',\n 'toUpper',\n 'toUpperANSI',\n 'triggerActivated',\n 'triggerActivation',\n 'triggerAmmo',\n 'triggerArea',\n 'triggerAttachedVehicle',\n 'triggerAttachObject',\n 'triggerAttachVehicle',\n 'triggerDynamicSimulation',\n 'triggerInterval',\n 'triggerStatements',\n 'triggerText',\n 'triggerTimeout',\n 'triggerTimeoutCurrent',\n 'triggerType',\n 'trim',\n 'turretLocal',\n 'turretOwner',\n 'turretUnit',\n 'tvAdd',\n 'tvClear',\n 'tvCollapse',\n 'tvCollapseAll',\n 'tvCount',\n 'tvCurSel',\n 'tvData',\n 'tvDelete',\n 'tvExpand',\n 'tvExpandAll',\n 'tvIsSelected',\n 'tvPicture',\n 'tvPictureRight',\n 'tvSelection',\n 'tvSetColor',\n 'tvSetCurSel',\n 'tvSetData',\n 'tvSetPicture',\n 'tvSetPictureColor',\n 'tvSetPictureColorDisabled',\n 'tvSetPictureColorSelected',\n 'tvSetPictureRight',\n 'tvSetPictureRightColor',\n 'tvSetPictureRightColorDisabled',\n 'tvSetPictureRightColorSelected',\n 'tvSetSelectColor',\n 'tvSetSelected',\n 'tvSetText',\n 'tvSetTooltip',\n 'tvSetValue',\n 'tvSort',\n 'tvSortAll',\n 'tvSortByValue',\n 'tvSortByValueAll',\n 'tvText',\n 'tvTooltip',\n 'tvValue',\n 'type',\n 'typeName',\n 'typeOf',\n 'UAVControl',\n 'uiNamespace',\n 'uiSleep',\n 'unassignCurator',\n 'unassignItem',\n 'unassignTeam',\n 'unassignVehicle',\n 'underwater',\n 'uniform',\n 'uniformContainer',\n 'uniformItems',\n 'uniformMagazines',\n 'unitAddons',\n 'unitAimPosition',\n 'unitAimPositionVisual',\n 'unitBackpack',\n 'unitCombatMode',\n 'unitIsUAV',\n 'unitPos',\n 'unitReady',\n 'unitRecoilCoefficient',\n 'units',\n 'unitsBelowHeight',\n 'unitTurret',\n 'unlinkItem',\n 'unlockAchievement',\n 'unregisterTask',\n 'updateDrawIcon',\n 'updateMenuItem',\n 'updateObjectTree',\n 'useAIOperMapObstructionTest',\n 'useAISteeringComponent',\n 'useAudioTimeForMoves',\n 'userInputDisabled',\n 'vectorAdd',\n 'vectorCos',\n 'vectorCrossProduct',\n 'vectorDiff',\n 'vectorDir',\n 'vectorDirVisual',\n 'vectorDistance',\n 'vectorDistanceSqr',\n 'vectorDotProduct',\n 'vectorFromTo',\n 'vectorLinearConversion',\n 'vectorMagnitude',\n 'vectorMagnitudeSqr',\n 'vectorModelToWorld',\n 'vectorModelToWorldVisual',\n 'vectorMultiply',\n 'vectorNormalized',\n 'vectorUp',\n 'vectorUpVisual',\n 'vectorWorldToModel',\n 'vectorWorldToModelVisual',\n 'vehicle',\n 'vehicleCargoEnabled',\n 'vehicleChat',\n 'vehicleMoveInfo',\n 'vehicleRadio',\n 'vehicleReceiveRemoteTargets',\n 'vehicleReportOwnPosition',\n 'vehicleReportRemoteTargets',\n 'vehicles',\n 'vehicleVarName',\n 'velocity',\n 'velocityModelSpace',\n 'verifySignature',\n 'vest',\n 'vestContainer',\n 'vestItems',\n 'vestMagazines',\n 'viewDistance',\n 'visibleCompass',\n 'visibleGPS',\n 'visibleMap',\n 'visiblePosition',\n 'visiblePositionASL',\n 'visibleScoretable',\n 'visibleWatch',\n 'waves',\n 'waypointAttachedObject',\n 'waypointAttachedVehicle',\n 'waypointAttachObject',\n 'waypointAttachVehicle',\n 'waypointBehaviour',\n 'waypointCombatMode',\n 'waypointCompletionRadius',\n 'waypointDescription',\n 'waypointForceBehaviour',\n 'waypointFormation',\n 'waypointHousePosition',\n 'waypointLoiterAltitude',\n 'waypointLoiterRadius',\n 'waypointLoiterType',\n 'waypointName',\n 'waypointPosition',\n 'waypoints',\n 'waypointScript',\n 'waypointsEnabledUAV',\n 'waypointShow',\n 'waypointSpeed',\n 'waypointStatements',\n 'waypointTimeout',\n 'waypointTimeoutCurrent',\n 'waypointType',\n 'waypointVisible',\n 'weaponAccessories',\n 'weaponAccessoriesCargo',\n 'weaponCargo',\n 'weaponDirection',\n 'weaponInertia',\n 'weaponLowered',\n 'weapons',\n 'weaponsItems',\n 'weaponsItemsCargo',\n 'weaponState',\n 'weaponsTurret',\n 'weightRTD',\n 'WFSideText',\n 'wind',\n 'windDir',\n 'windRTD',\n 'windStr',\n 'wingsForcesRTD',\n 'worldName',\n 'worldSize',\n 'worldToModel',\n 'worldToModelVisual',\n 'worldToScreen',\n ];\n\n // list of keywords from:\n // https://community.bistudio.com/wiki/PreProcessor_Commands\n const PREPROCESSOR = {\n className: 'meta',\n begin: /#\\s*[a-z]+\\b/,\n end: /$/,\n keywords: { keyword:\n 'define undef ifdef ifndef else endif include' },\n contains: [\n {\n begin: /\\\\\\n/,\n relevance: 0\n },\n hljs.inherit(STRINGS, { className: 'string' }),\n {\n className: 'string',\n begin: /<[^\\n>]*>/,\n end: /$/,\n illegal: '\\\\n'\n },\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n };\n\n return {\n name: 'SQF',\n case_insensitive: true,\n keywords: {\n keyword: KEYWORDS,\n built_in: BUILT_IN,\n literal: LITERAL\n },\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.NUMBER_MODE,\n VARIABLE,\n FUNCTION,\n STRINGS,\n PREPROCESSOR\n ],\n illegal: /#|^\\$ /\n };\n}\n\nmodule.exports = sqf;\n","/*\n Language: SQL\n Website: https://en.wikipedia.org/wiki/SQL\n Category: common, database\n */\n\n/*\n\nGoals:\n\nSQL is intended to highlight basic/common SQL keywords and expressions\n\n- If pretty much every single SQL server includes supports, then it's a canidate.\n- It is NOT intended to include tons of vendor specific keywords (Oracle, MySQL,\n PostgreSQL) although the list of data types is purposely a bit more expansive.\n- For more specific SQL grammars please see:\n - PostgreSQL and PL/pgSQL - core\n - T-SQL - https://github.com/highlightjs/highlightjs-tsql\n - sql_more (core)\n\n */\n\nfunction sql(hljs) {\n const regex = hljs.regex;\n const COMMENT_MODE = hljs.COMMENT('--', '$');\n const STRING = {\n className: 'string',\n variants: [\n {\n begin: /'/,\n end: /'/,\n contains: [ { begin: /''/ } ]\n }\n ]\n };\n const QUOTED_IDENTIFIER = {\n begin: /\"/,\n end: /\"/,\n contains: [ { begin: /\"\"/ } ]\n };\n\n const LITERALS = [\n \"true\",\n \"false\",\n // Not sure it's correct to call NULL literal, and clauses like IS [NOT] NULL look strange that way.\n // \"null\",\n \"unknown\"\n ];\n\n const MULTI_WORD_TYPES = [\n \"double precision\",\n \"large object\",\n \"with timezone\",\n \"without timezone\"\n ];\n\n const TYPES = [\n 'bigint',\n 'binary',\n 'blob',\n 'boolean',\n 'char',\n 'character',\n 'clob',\n 'date',\n 'dec',\n 'decfloat',\n 'decimal',\n 'float',\n 'int',\n 'integer',\n 'interval',\n 'nchar',\n 'nclob',\n 'national',\n 'numeric',\n 'real',\n 'row',\n 'smallint',\n 'time',\n 'timestamp',\n 'varchar',\n 'varying', // modifier (character varying)\n 'varbinary'\n ];\n\n const NON_RESERVED_WORDS = [\n \"add\",\n \"asc\",\n \"collation\",\n \"desc\",\n \"final\",\n \"first\",\n \"last\",\n \"view\"\n ];\n\n // https://jakewheat.github.io/sql-overview/sql-2016-foundation-grammar.html#reserved-word\n const RESERVED_WORDS = [\n \"abs\",\n \"acos\",\n \"all\",\n \"allocate\",\n \"alter\",\n \"and\",\n \"any\",\n \"are\",\n \"array\",\n \"array_agg\",\n \"array_max_cardinality\",\n \"as\",\n \"asensitive\",\n \"asin\",\n \"asymmetric\",\n \"at\",\n \"atan\",\n \"atomic\",\n \"authorization\",\n \"avg\",\n \"begin\",\n \"begin_frame\",\n \"begin_partition\",\n \"between\",\n \"bigint\",\n \"binary\",\n \"blob\",\n \"boolean\",\n \"both\",\n \"by\",\n \"call\",\n \"called\",\n \"cardinality\",\n \"cascaded\",\n \"case\",\n \"cast\",\n \"ceil\",\n \"ceiling\",\n \"char\",\n \"char_length\",\n \"character\",\n \"character_length\",\n \"check\",\n \"classifier\",\n \"clob\",\n \"close\",\n \"coalesce\",\n \"collate\",\n \"collect\",\n \"column\",\n \"commit\",\n \"condition\",\n \"connect\",\n \"constraint\",\n \"contains\",\n \"convert\",\n \"copy\",\n \"corr\",\n \"corresponding\",\n \"cos\",\n \"cosh\",\n \"count\",\n \"covar_pop\",\n \"covar_samp\",\n \"create\",\n \"cross\",\n \"cube\",\n \"cume_dist\",\n \"current\",\n \"current_catalog\",\n \"current_date\",\n \"current_default_transform_group\",\n \"current_path\",\n \"current_role\",\n \"current_row\",\n \"current_schema\",\n \"current_time\",\n \"current_timestamp\",\n \"current_path\",\n \"current_role\",\n \"current_transform_group_for_type\",\n \"current_user\",\n \"cursor\",\n \"cycle\",\n \"date\",\n \"day\",\n \"deallocate\",\n \"dec\",\n \"decimal\",\n \"decfloat\",\n \"declare\",\n \"default\",\n \"define\",\n \"delete\",\n \"dense_rank\",\n \"deref\",\n \"describe\",\n \"deterministic\",\n \"disconnect\",\n \"distinct\",\n \"double\",\n \"drop\",\n \"dynamic\",\n \"each\",\n \"element\",\n \"else\",\n \"empty\",\n \"end\",\n \"end_frame\",\n \"end_partition\",\n \"end-exec\",\n \"equals\",\n \"escape\",\n \"every\",\n \"except\",\n \"exec\",\n \"execute\",\n \"exists\",\n \"exp\",\n \"external\",\n \"extract\",\n \"false\",\n \"fetch\",\n \"filter\",\n \"first_value\",\n \"float\",\n \"floor\",\n \"for\",\n \"foreign\",\n \"frame_row\",\n \"free\",\n \"from\",\n \"full\",\n \"function\",\n \"fusion\",\n \"get\",\n \"global\",\n \"grant\",\n \"group\",\n \"grouping\",\n \"groups\",\n \"having\",\n \"hold\",\n \"hour\",\n \"identity\",\n \"in\",\n \"indicator\",\n \"initial\",\n \"inner\",\n \"inout\",\n \"insensitive\",\n \"insert\",\n \"int\",\n \"integer\",\n \"intersect\",\n \"intersection\",\n \"interval\",\n \"into\",\n \"is\",\n \"join\",\n \"json_array\",\n \"json_arrayagg\",\n \"json_exists\",\n \"json_object\",\n \"json_objectagg\",\n \"json_query\",\n \"json_table\",\n \"json_table_primitive\",\n \"json_value\",\n \"lag\",\n \"language\",\n \"large\",\n \"last_value\",\n \"lateral\",\n \"lead\",\n \"leading\",\n \"left\",\n \"like\",\n \"like_regex\",\n \"listagg\",\n \"ln\",\n \"local\",\n \"localtime\",\n \"localtimestamp\",\n \"log\",\n \"log10\",\n \"lower\",\n \"match\",\n \"match_number\",\n \"match_recognize\",\n \"matches\",\n \"max\",\n \"member\",\n \"merge\",\n \"method\",\n \"min\",\n \"minute\",\n \"mod\",\n \"modifies\",\n \"module\",\n \"month\",\n \"multiset\",\n \"national\",\n \"natural\",\n \"nchar\",\n \"nclob\",\n \"new\",\n \"no\",\n \"none\",\n \"normalize\",\n \"not\",\n \"nth_value\",\n \"ntile\",\n \"null\",\n \"nullif\",\n \"numeric\",\n \"octet_length\",\n \"occurrences_regex\",\n \"of\",\n \"offset\",\n \"old\",\n \"omit\",\n \"on\",\n \"one\",\n \"only\",\n \"open\",\n \"or\",\n \"order\",\n \"out\",\n \"outer\",\n \"over\",\n \"overlaps\",\n \"overlay\",\n \"parameter\",\n \"partition\",\n \"pattern\",\n \"per\",\n \"percent\",\n \"percent_rank\",\n \"percentile_cont\",\n \"percentile_disc\",\n \"period\",\n \"portion\",\n \"position\",\n \"position_regex\",\n \"power\",\n \"precedes\",\n \"precision\",\n \"prepare\",\n \"primary\",\n \"procedure\",\n \"ptf\",\n \"range\",\n \"rank\",\n \"reads\",\n \"real\",\n \"recursive\",\n \"ref\",\n \"references\",\n \"referencing\",\n \"regr_avgx\",\n \"regr_avgy\",\n \"regr_count\",\n \"regr_intercept\",\n \"regr_r2\",\n \"regr_slope\",\n \"regr_sxx\",\n \"regr_sxy\",\n \"regr_syy\",\n \"release\",\n \"result\",\n \"return\",\n \"returns\",\n \"revoke\",\n \"right\",\n \"rollback\",\n \"rollup\",\n \"row\",\n \"row_number\",\n \"rows\",\n \"running\",\n \"savepoint\",\n \"scope\",\n \"scroll\",\n \"search\",\n \"second\",\n \"seek\",\n \"select\",\n \"sensitive\",\n \"session_user\",\n \"set\",\n \"show\",\n \"similar\",\n \"sin\",\n \"sinh\",\n \"skip\",\n \"smallint\",\n \"some\",\n \"specific\",\n \"specifictype\",\n \"sql\",\n \"sqlexception\",\n \"sqlstate\",\n \"sqlwarning\",\n \"sqrt\",\n \"start\",\n \"static\",\n \"stddev_pop\",\n \"stddev_samp\",\n \"submultiset\",\n \"subset\",\n \"substring\",\n \"substring_regex\",\n \"succeeds\",\n \"sum\",\n \"symmetric\",\n \"system\",\n \"system_time\",\n \"system_user\",\n \"table\",\n \"tablesample\",\n \"tan\",\n \"tanh\",\n \"then\",\n \"time\",\n \"timestamp\",\n \"timezone_hour\",\n \"timezone_minute\",\n \"to\",\n \"trailing\",\n \"translate\",\n \"translate_regex\",\n \"translation\",\n \"treat\",\n \"trigger\",\n \"trim\",\n \"trim_array\",\n \"true\",\n \"truncate\",\n \"uescape\",\n \"union\",\n \"unique\",\n \"unknown\",\n \"unnest\",\n \"update\",\n \"upper\",\n \"user\",\n \"using\",\n \"value\",\n \"values\",\n \"value_of\",\n \"var_pop\",\n \"var_samp\",\n \"varbinary\",\n \"varchar\",\n \"varying\",\n \"versioning\",\n \"when\",\n \"whenever\",\n \"where\",\n \"width_bucket\",\n \"window\",\n \"with\",\n \"within\",\n \"without\",\n \"year\",\n ];\n\n // these are reserved words we have identified to be functions\n // and should only be highlighted in a dispatch-like context\n // ie, array_agg(...), etc.\n const RESERVED_FUNCTIONS = [\n \"abs\",\n \"acos\",\n \"array_agg\",\n \"asin\",\n \"atan\",\n \"avg\",\n \"cast\",\n \"ceil\",\n \"ceiling\",\n \"coalesce\",\n \"corr\",\n \"cos\",\n \"cosh\",\n \"count\",\n \"covar_pop\",\n \"covar_samp\",\n \"cume_dist\",\n \"dense_rank\",\n \"deref\",\n \"element\",\n \"exp\",\n \"extract\",\n \"first_value\",\n \"floor\",\n \"json_array\",\n \"json_arrayagg\",\n \"json_exists\",\n \"json_object\",\n \"json_objectagg\",\n \"json_query\",\n \"json_table\",\n \"json_table_primitive\",\n \"json_value\",\n \"lag\",\n \"last_value\",\n \"lead\",\n \"listagg\",\n \"ln\",\n \"log\",\n \"log10\",\n \"lower\",\n \"max\",\n \"min\",\n \"mod\",\n \"nth_value\",\n \"ntile\",\n \"nullif\",\n \"percent_rank\",\n \"percentile_cont\",\n \"percentile_disc\",\n \"position\",\n \"position_regex\",\n \"power\",\n \"rank\",\n \"regr_avgx\",\n \"regr_avgy\",\n \"regr_count\",\n \"regr_intercept\",\n \"regr_r2\",\n \"regr_slope\",\n \"regr_sxx\",\n \"regr_sxy\",\n \"regr_syy\",\n \"row_number\",\n \"sin\",\n \"sinh\",\n \"sqrt\",\n \"stddev_pop\",\n \"stddev_samp\",\n \"substring\",\n \"substring_regex\",\n \"sum\",\n \"tan\",\n \"tanh\",\n \"translate\",\n \"translate_regex\",\n \"treat\",\n \"trim\",\n \"trim_array\",\n \"unnest\",\n \"upper\",\n \"value_of\",\n \"var_pop\",\n \"var_samp\",\n \"width_bucket\",\n ];\n\n // these functions can\n const POSSIBLE_WITHOUT_PARENS = [\n \"current_catalog\",\n \"current_date\",\n \"current_default_transform_group\",\n \"current_path\",\n \"current_role\",\n \"current_schema\",\n \"current_transform_group_for_type\",\n \"current_user\",\n \"session_user\",\n \"system_time\",\n \"system_user\",\n \"current_time\",\n \"localtime\",\n \"current_timestamp\",\n \"localtimestamp\"\n ];\n\n // those exist to boost relevance making these very\n // \"SQL like\" keyword combos worth +1 extra relevance\n const COMBOS = [\n \"create table\",\n \"insert into\",\n \"primary key\",\n \"foreign key\",\n \"not null\",\n \"alter table\",\n \"add constraint\",\n \"grouping sets\",\n \"on overflow\",\n \"character set\",\n \"respect nulls\",\n \"ignore nulls\",\n \"nulls first\",\n \"nulls last\",\n \"depth first\",\n \"breadth first\"\n ];\n\n const FUNCTIONS = RESERVED_FUNCTIONS;\n\n const KEYWORDS = [\n ...RESERVED_WORDS,\n ...NON_RESERVED_WORDS\n ].filter((keyword) => {\n return !RESERVED_FUNCTIONS.includes(keyword);\n });\n\n const VARIABLE = {\n className: \"variable\",\n begin: /@[a-z0-9]+/,\n };\n\n const OPERATOR = {\n className: \"operator\",\n begin: /[-+*/=%^~]|&&?|\\|\\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,\n relevance: 0,\n };\n\n const FUNCTION_CALL = {\n begin: regex.concat(/\\b/, regex.either(...FUNCTIONS), /\\s*\\(/),\n relevance: 0,\n keywords: { built_in: FUNCTIONS }\n };\n\n // keywords with less than 3 letters are reduced in relevancy\n function reduceRelevancy(list, {\n exceptions, when\n } = {}) {\n const qualifyFn = when;\n exceptions = exceptions || [];\n return list.map((item) => {\n if (item.match(/\\|\\d+$/) || exceptions.includes(item)) {\n return item;\n } else if (qualifyFn(item)) {\n return `${item}|0`;\n } else {\n return item;\n }\n });\n }\n\n return {\n name: 'SQL',\n case_insensitive: true,\n // does not include {} or HTML tags `</`\n illegal: /[{}]|<\\//,\n keywords: {\n $pattern: /\\b[\\w\\.]+/,\n keyword:\n reduceRelevancy(KEYWORDS, { when: (x) => x.length < 3 }),\n literal: LITERALS,\n type: TYPES,\n built_in: POSSIBLE_WITHOUT_PARENS\n },\n contains: [\n {\n begin: regex.either(...COMBOS),\n relevance: 0,\n keywords: {\n $pattern: /[\\w\\.]+/,\n keyword: KEYWORDS.concat(COMBOS),\n literal: LITERALS,\n type: TYPES\n },\n },\n {\n className: \"type\",\n begin: regex.either(...MULTI_WORD_TYPES)\n },\n FUNCTION_CALL,\n VARIABLE,\n STRING,\n QUOTED_IDENTIFIER,\n hljs.C_NUMBER_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n COMMENT_MODE,\n OPERATOR\n ]\n };\n}\n\nmodule.exports = sql;\n","/*\nLanguage: Stan\nDescription: The Stan probabilistic programming language\nAuthor: Sean Pinkney <sean.pinkney@gmail.com>\nWebsite: http://mc-stan.org/\nCategory: scientific\n*/\n\nfunction stan(hljs) {\n const regex = hljs.regex;\n // variable names cannot conflict with block identifiers\n const BLOCKS = [\n 'functions',\n 'model',\n 'data',\n 'parameters',\n 'quantities',\n 'transformed',\n 'generated'\n ];\n\n const STATEMENTS = [\n 'for',\n 'in',\n 'if',\n 'else',\n 'while',\n 'break',\n 'continue',\n 'return'\n ];\n\n const TYPES = [\n 'array',\n 'complex',\n 'int',\n 'real',\n 'vector',\n 'ordered',\n 'positive_ordered',\n 'simplex',\n 'unit_vector',\n 'row_vector',\n 'matrix',\n 'cholesky_factor_corr|10',\n 'cholesky_factor_cov|10',\n 'corr_matrix|10',\n 'cov_matrix|10',\n 'void'\n ];\n\n // to get the functions list\n // clone the [stan-docs repo](https://github.com/stan-dev/docs)\n // then cd into it and run this bash script https://gist.github.com/joshgoebel/dcd33f82d4059a907c986049893843cf\n //\n // the output files are\n // distributions_quoted.txt\n // functions_quoted.txt\n\n const FUNCTIONS = [\n 'Phi',\n 'Phi_approx',\n 'abs',\n 'acos',\n 'acosh',\n 'add_diag',\n 'algebra_solver',\n 'algebra_solver_newton',\n 'append_array',\n 'append_col',\n 'append_row',\n 'asin',\n 'asinh',\n 'atan',\n 'atan2',\n 'atanh',\n 'bessel_first_kind',\n 'bessel_second_kind',\n 'binary_log_loss',\n 'binomial_coefficient_log',\n 'block',\n 'cbrt',\n 'ceil',\n 'chol2inv',\n 'cholesky_decompose',\n 'choose',\n 'col',\n 'cols',\n 'columns_dot_product',\n 'columns_dot_self',\n 'conj',\n 'cos',\n 'cosh',\n 'cov_exp_quad',\n 'crossprod',\n 'csr_extract_u',\n 'csr_extract_v',\n 'csr_extract_w',\n 'csr_matrix_times_vector',\n 'csr_to_dense_matrix',\n 'cumulative_sum',\n 'determinant',\n 'diag_matrix',\n 'diag_post_multiply',\n 'diag_pre_multiply',\n 'diagonal',\n 'digamma',\n 'dims',\n 'distance',\n 'dot_product',\n 'dot_self',\n 'eigenvalues_sym',\n 'eigenvectors_sym',\n 'erf',\n 'erfc',\n 'exp',\n 'exp2',\n 'expm1',\n 'fabs',\n 'falling_factorial',\n 'fdim',\n 'floor',\n 'fma',\n 'fmax',\n 'fmin',\n 'fmod',\n 'gamma_p',\n 'gamma_q',\n 'generalized_inverse',\n 'get_imag',\n 'get_lp',\n 'get_real',\n 'head',\n 'hmm_hidden_state_prob',\n 'hmm_marginal',\n 'hypot',\n 'identity_matrix',\n 'inc_beta',\n 'int_step',\n 'integrate_1d',\n 'integrate_ode',\n 'integrate_ode_adams',\n 'integrate_ode_bdf',\n 'integrate_ode_rk45',\n 'inv',\n 'inv_Phi',\n 'inv_cloglog',\n 'inv_logit',\n 'inv_sqrt',\n 'inv_square',\n 'inverse',\n 'inverse_spd',\n 'is_inf',\n 'is_nan',\n 'lambert_w0',\n 'lambert_wm1',\n 'lbeta',\n 'lchoose',\n 'ldexp',\n 'lgamma',\n 'linspaced_array',\n 'linspaced_int_array',\n 'linspaced_row_vector',\n 'linspaced_vector',\n 'lmgamma',\n 'lmultiply',\n 'log',\n 'log1m',\n 'log1m_exp',\n 'log1m_inv_logit',\n 'log1p',\n 'log1p_exp',\n 'log_determinant',\n 'log_diff_exp',\n 'log_falling_factorial',\n 'log_inv_logit',\n 'log_inv_logit_diff',\n 'log_mix',\n 'log_modified_bessel_first_kind',\n 'log_rising_factorial',\n 'log_softmax',\n 'log_sum_exp',\n 'logit',\n 'machine_precision',\n 'map_rect',\n 'matrix_exp',\n 'matrix_exp_multiply',\n 'matrix_power',\n 'max',\n 'mdivide_left_spd',\n 'mdivide_left_tri_low',\n 'mdivide_right_spd',\n 'mdivide_right_tri_low',\n 'mean',\n 'min',\n 'modified_bessel_first_kind',\n 'modified_bessel_second_kind',\n 'multiply_log',\n 'multiply_lower_tri_self_transpose',\n 'negative_infinity',\n 'norm',\n 'not_a_number',\n 'num_elements',\n 'ode_adams',\n 'ode_adams_tol',\n 'ode_adjoint_tol_ctl',\n 'ode_bdf',\n 'ode_bdf_tol',\n 'ode_ckrk',\n 'ode_ckrk_tol',\n 'ode_rk45',\n 'ode_rk45_tol',\n 'one_hot_array',\n 'one_hot_int_array',\n 'one_hot_row_vector',\n 'one_hot_vector',\n 'ones_array',\n 'ones_int_array',\n 'ones_row_vector',\n 'ones_vector',\n 'owens_t',\n 'polar',\n 'positive_infinity',\n 'pow',\n 'print',\n 'prod',\n 'proj',\n 'qr_Q',\n 'qr_R',\n 'qr_thin_Q',\n 'qr_thin_R',\n 'quad_form',\n 'quad_form_diag',\n 'quad_form_sym',\n 'quantile',\n 'rank',\n 'reduce_sum',\n 'reject',\n 'rep_array',\n 'rep_matrix',\n 'rep_row_vector',\n 'rep_vector',\n 'reverse',\n 'rising_factorial',\n 'round',\n 'row',\n 'rows',\n 'rows_dot_product',\n 'rows_dot_self',\n 'scale_matrix_exp_multiply',\n 'sd',\n 'segment',\n 'sin',\n 'singular_values',\n 'sinh',\n 'size',\n 'softmax',\n 'sort_asc',\n 'sort_desc',\n 'sort_indices_asc',\n 'sort_indices_desc',\n 'sqrt',\n 'square',\n 'squared_distance',\n 'step',\n 'sub_col',\n 'sub_row',\n 'sum',\n 'svd_U',\n 'svd_V',\n 'symmetrize_from_lower_tri',\n 'tail',\n 'tan',\n 'tanh',\n 'target',\n 'tcrossprod',\n 'tgamma',\n 'to_array_1d',\n 'to_array_2d',\n 'to_complex',\n 'to_matrix',\n 'to_row_vector',\n 'to_vector',\n 'trace',\n 'trace_gen_quad_form',\n 'trace_quad_form',\n 'trigamma',\n 'trunc',\n 'uniform_simplex',\n 'variance',\n 'zeros_array',\n 'zeros_int_array',\n 'zeros_row_vector'\n ];\n\n const DISTRIBUTIONS = [\n 'bernoulli',\n 'bernoulli_logit',\n 'bernoulli_logit_glm',\n 'beta',\n 'beta_binomial',\n 'beta_proportion',\n 'binomial',\n 'binomial_logit',\n 'categorical',\n 'categorical_logit',\n 'categorical_logit_glm',\n 'cauchy',\n 'chi_square',\n 'dirichlet',\n 'discrete_range',\n 'double_exponential',\n 'exp_mod_normal',\n 'exponential',\n 'frechet',\n 'gamma',\n 'gaussian_dlm_obs',\n 'gumbel',\n 'hmm_latent',\n 'hypergeometric',\n 'inv_chi_square',\n 'inv_gamma',\n 'inv_wishart',\n 'lkj_corr',\n 'lkj_corr_cholesky',\n 'logistic',\n 'lognormal',\n 'multi_gp',\n 'multi_gp_cholesky',\n 'multi_normal',\n 'multi_normal_cholesky',\n 'multi_normal_prec',\n 'multi_student_t',\n 'multinomial',\n 'multinomial_logit',\n 'neg_binomial',\n 'neg_binomial_2',\n 'neg_binomial_2_log',\n 'neg_binomial_2_log_glm',\n 'normal',\n 'normal_id_glm',\n 'ordered_logistic',\n 'ordered_logistic_glm',\n 'ordered_probit',\n 'pareto',\n 'pareto_type_2',\n 'poisson',\n 'poisson_log',\n 'poisson_log_glm',\n 'rayleigh',\n 'scaled_inv_chi_square',\n 'skew_double_exponential',\n 'skew_normal',\n 'std_normal',\n 'student_t',\n 'uniform',\n 'von_mises',\n 'weibull',\n 'wiener',\n 'wishart'\n ];\n\n const BLOCK_COMMENT = hljs.COMMENT(\n /\\/\\*/,\n /\\*\\//,\n {\n relevance: 0,\n contains: [\n {\n scope: 'doctag',\n match: /@(return|param)/\n }\n ]\n }\n );\n\n const INCLUDE = {\n scope: 'meta',\n begin: /#include\\b/,\n end: /$/,\n contains: [\n {\n match: /[a-z][a-z-._]+/,\n scope: 'string'\n },\n hljs.C_LINE_COMMENT_MODE\n ]\n };\n\n const RANGE_CONSTRAINTS = [\n \"lower\",\n \"upper\",\n \"offset\",\n \"multiplier\"\n ];\n\n return {\n name: 'Stan',\n aliases: [ 'stanfuncs' ],\n keywords: {\n $pattern: hljs.IDENT_RE,\n title: BLOCKS,\n type: TYPES,\n keyword: STATEMENTS,\n built_in: FUNCTIONS\n },\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n INCLUDE,\n hljs.HASH_COMMENT_MODE,\n BLOCK_COMMENT,\n {\n scope: 'built_in',\n match: /\\s(pi|e|sqrt2|log2|log10)(?=\\()/,\n relevance: 0\n },\n {\n match: regex.concat(/[<,]\\s*/, regex.either(...RANGE_CONSTRAINTS), /\\s*=/),\n keywords: RANGE_CONSTRAINTS\n },\n {\n scope: 'keyword',\n match: /\\btarget(?=\\s*\\+=)/,\n },\n {\n // highlights the 'T' in T[,] for only Stan language distributrions\n match: [\n /~\\s*/,\n regex.either(...DISTRIBUTIONS),\n /(?:\\(\\))/,\n /\\s*T(?=\\s*\\[)/\n ],\n scope: {\n 2: \"built_in\",\n 4: \"keyword\"\n }\n },\n {\n // highlights distributions that end with special endings\n scope: 'built_in',\n keywords: DISTRIBUTIONS,\n begin: regex.concat(/\\w*/, regex.either(...DISTRIBUTIONS), /(_lpdf|_lupdf|_lpmf|_cdf|_lcdf|_lccdf|_qf)(?=\\s*[\\(.*\\)])/)\n },\n {\n // highlights distributions after ~\n begin: [\n /~/,\n /\\s*/,\n regex.concat(regex.either(...DISTRIBUTIONS), /(?=\\s*[\\(.*\\)])/)\n ],\n scope: { 3: \"built_in\" }\n },\n {\n // highlights user defined distributions after ~\n begin: [\n /~/,\n /\\s*\\w+(?=\\s*[\\(.*\\)])/,\n '(?!.*/\\b(' + regex.either(...DISTRIBUTIONS) + ')\\b)'\n ],\n scope: { 2: \"title.function\" }\n },\n {\n // highlights user defined distributions with special endings\n scope: 'title.function',\n begin: /\\w*(_lpdf|_lupdf|_lpmf|_cdf|_lcdf|_lccdf|_qf)(?=\\s*[\\(.*\\)])/\n },\n {\n scope: 'number',\n match: regex.concat(\n // Comes from @RunDevelopment accessed 11/29/2021 at\n // https://github.com/PrismJS/prism/blob/c53ad2e65b7193ab4f03a1797506a54bbb33d5a2/components/prism-stan.js#L56\n\n // start of big noncapture group which\n // 1. gets numbers that are by themselves\n // 2. numbers that are separated by _\n // 3. numbers that are separted by .\n /(?:\\b\\d+(?:_\\d+)*(?:\\.(?:\\d+(?:_\\d+)*)?)?|\\B\\.\\d+(?:_\\d+)*)/,\n // grabs scientific notation\n // grabs complex numbers with i\n /(?:[eE][+-]?\\d+(?:_\\d+)*)?i?(?!\\w)/\n ),\n relevance: 0\n },\n {\n scope: 'string',\n begin: /\"/,\n end: /\"/\n }\n ]\n };\n}\n\nmodule.exports = stan;\n","/*\nLanguage: Stata\nAuthor: Brian Quistorff <bquistorff@gmail.com>\nContributors: Drew McDonald <drewmcdo@gmail.com>\nDescription: Stata is a general-purpose statistical software package created in 1985 by StataCorp.\nWebsite: https://en.wikipedia.org/wiki/Stata\nCategory: scientific\n*/\n\n/*\n This is a fork and modification of Drew McDonald's file (https://github.com/drewmcdonald/stata-highlighting). I have also included a list of builtin commands from https://bugs.kde.org/show_bug.cgi?id=135646.\n*/\n\nfunction stata(hljs) {\n return {\n name: 'Stata',\n aliases: [\n 'do',\n 'ado'\n ],\n case_insensitive: true,\n keywords: 'if else in foreach for forv forva forval forvalu forvalue forvalues by bys bysort xi quietly qui capture about ac ac_7 acprplot acprplot_7 adjust ado adopath adoupdate alpha ameans an ano anov anova anova_estat anova_terms anovadef aorder ap app appe appen append arch arch_dr arch_estat arch_p archlm areg areg_p args arima arima_dr arima_estat arima_p as asmprobit asmprobit_estat asmprobit_lf asmprobit_mfx__dlg asmprobit_p ass asse asser assert avplot avplot_7 avplots avplots_7 bcskew0 bgodfrey bias binreg bip0_lf biplot bipp_lf bipr_lf bipr_p biprobit bitest bitesti bitowt blogit bmemsize boot bootsamp bootstrap bootstrap_8 boxco_l boxco_p boxcox boxcox_6 boxcox_p bprobit br break brier bro brow brows browse brr brrstat bs bs_7 bsampl_w bsample bsample_7 bsqreg bstat bstat_7 bstat_8 bstrap bstrap_7 bubble bubbleplot ca ca_estat ca_p cabiplot camat canon canon_8 canon_8_p canon_estat canon_p cap caprojection capt captu captur capture cat cc cchart cchart_7 cci cd censobs_table centile cf char chdir checkdlgfiles checkestimationsample checkhlpfiles checksum chelp ci cii cl class classutil clear cli clis clist clo clog clog_lf clog_p clogi clogi_sw clogit clogit_lf clogit_p clogitp clogl_sw cloglog clonevar clslistarray cluster cluster_measures cluster_stop cluster_tree cluster_tree_8 clustermat cmdlog cnr cnre cnreg cnreg_p cnreg_sw cnsreg codebook collaps4 collapse colormult_nb colormult_nw compare compress conf confi confir confirm conren cons const constr constra constrai constrain constraint continue contract copy copyright copysource cor corc corr corr2data corr_anti corr_kmo corr_smc corre correl correla correlat correlate corrgram cou coun count cox cox_p cox_sw coxbase coxhaz coxvar cprplot cprplot_7 crc cret cretu cretur creturn cross cs cscript cscript_log csi ct ct_is ctset ctst_5 ctst_st cttost cumsp cumsp_7 cumul cusum cusum_7 cutil d|0 datasig datasign datasigna datasignat datasignatu datasignatur datasignature datetof db dbeta de dec deco decod decode deff des desc descr descri describ describe destring dfbeta dfgls dfuller di di_g dir dirstats dis discard disp disp_res disp_s displ displa display distinct do doe doed doedi doedit dotplot dotplot_7 dprobit drawnorm drop ds ds_util dstdize duplicates durbina dwstat dydx e|0 ed edi edit egen eivreg emdef en enc enco encod encode eq erase ereg ereg_lf ereg_p ereg_sw ereghet ereghet_glf ereghet_glf_sh ereghet_gp ereghet_ilf ereghet_ilf_sh ereghet_ip eret eretu eretur ereturn err erro error esize est est_cfexist est_cfname est_clickable est_expand est_hold est_table est_unhold est_unholdok estat estat_default estat_summ estat_vce_only esti estimates etodow etof etomdy ex exi exit expand expandcl fac fact facto factor factor_estat factor_p factor_pca_rotated factor_rotate factormat fcast fcast_compute fcast_graph fdades fdadesc fdadescr fdadescri fdadescrib fdadescribe fdasav fdasave fdause fh_st file open file read file close file filefilter fillin find_hlp_file findfile findit findit_7 fit fl fli flis flist for5_0 forest forestplot form forma format fpredict frac_154 frac_adj frac_chk frac_cox frac_ddp frac_dis frac_dv frac_in frac_mun frac_pp frac_pq frac_pv frac_wgt frac_xo fracgen fracplot fracplot_7 fracpoly fracpred fron_ex fron_hn fron_p fron_tn fron_tn2 frontier ftodate ftoe ftomdy ftowdate funnel funnelplot g|0 gamhet_glf gamhet_gp gamhet_ilf gamhet_ip gamma gamma_d2 gamma_p gamma_sw gammahet gdi_hexagon gdi_spokes ge gen gene gener genera generat generate genrank genstd genvmean gettoken gl gladder gladder_7 glim_l01 glim_l02 glim_l03 glim_l04 glim_l05 glim_l06 glim_l07 glim_l08 glim_l09 glim_l10 glim_l11 glim_l12 glim_lf glim_mu glim_nw1 glim_nw2 glim_nw3 glim_p glim_v1 glim_v2 glim_v3 glim_v4 glim_v5 glim_v6 glim_v7 glm glm_6 glm_p glm_sw glmpred glo glob globa global glogit glogit_8 glogit_p gmeans gnbre_lf gnbreg gnbreg_5 gnbreg_p gomp_lf gompe_sw gomper_p gompertz gompertzhet gomphet_glf gomphet_glf_sh gomphet_gp gomphet_ilf gomphet_ilf_sh gomphet_ip gphdot gphpen gphprint gprefs gprobi_p gprobit gprobit_8 gr gr7 gr_copy gr_current gr_db gr_describe gr_dir gr_draw gr_draw_replay gr_drop gr_edit gr_editviewopts gr_example gr_example2 gr_export gr_print gr_qscheme gr_query gr_read gr_rename gr_replay gr_save gr_set gr_setscheme gr_table gr_undo gr_use graph graph7 grebar greigen greigen_7 greigen_8 grmeanby grmeanby_7 gs_fileinfo gs_filetype gs_graphinfo gs_stat gsort gwood h|0 hadimvo hareg hausman haver he heck_d2 heckma_p heckman heckp_lf heckpr_p heckprob hel help hereg hetpr_lf hetpr_p hetprob hettest hexdump hilite hist hist_7 histogram hlogit hlu hmeans hotel hotelling hprobit hreg hsearch icd9 icd9_ff icd9p iis impute imtest inbase include inf infi infil infile infix inp inpu input ins insheet insp inspe inspec inspect integ inten intreg intreg_7 intreg_p intrg2_ll intrg_ll intrg_ll2 ipolate iqreg ir irf irf_create irfm iri is_svy is_svysum isid istdize ivprob_1_lf ivprob_lf ivprobit ivprobit_p ivreg ivreg_footnote ivtob_1_lf ivtob_lf ivtobit ivtobit_p jackknife jacknife jknife jknife_6 jknife_8 jkstat joinby kalarma1 kap kap_3 kapmeier kappa kapwgt kdensity kdensity_7 keep ksm ksmirnov ktau kwallis l|0 la lab labbe labbeplot labe label labelbook ladder levels levelsof leverage lfit lfit_p li lincom line linktest lis list lloghet_glf lloghet_glf_sh lloghet_gp lloghet_ilf lloghet_ilf_sh lloghet_ip llogi_sw llogis_p llogist llogistic llogistichet lnorm_lf lnorm_sw lnorma_p lnormal lnormalhet lnormhet_glf lnormhet_glf_sh lnormhet_gp lnormhet_ilf lnormhet_ilf_sh lnormhet_ip lnskew0 loadingplot loc loca local log logi logis_lf logistic logistic_p logit logit_estat logit_p loglogs logrank loneway lookfor lookup lowess lowess_7 lpredict lrecomp lroc lroc_7 lrtest ls lsens lsens_7 lsens_x lstat ltable ltable_7 ltriang lv lvr2plot lvr2plot_7 m|0 ma mac macr macro makecns man manova manova_estat manova_p manovatest mantel mark markin markout marksample mat mat_capp mat_order mat_put_rr mat_rapp mata mata_clear mata_describe mata_drop mata_matdescribe mata_matsave mata_matuse mata_memory mata_mlib mata_mosave mata_rename mata_which matalabel matcproc matlist matname matr matri matrix matrix_input__dlg matstrik mcc mcci md0_ md1_ md1debug_ md2_ md2debug_ mds mds_estat mds_p mdsconfig mdslong mdsmat mdsshepard mdytoe mdytof me_derd mean means median memory memsize menl meqparse mer merg merge meta mfp mfx mhelp mhodds minbound mixed_ll mixed_ll_reparm mkassert mkdir mkmat mkspline ml ml_5 ml_adjs ml_bhhhs ml_c_d ml_check ml_clear ml_cnt ml_debug ml_defd ml_e0 ml_e0_bfgs ml_e0_cycle ml_e0_dfp ml_e0i ml_e1 ml_e1_bfgs ml_e1_bhhh ml_e1_cycle ml_e1_dfp ml_e2 ml_e2_cycle ml_ebfg0 ml_ebfr0 ml_ebfr1 ml_ebh0q ml_ebhh0 ml_ebhr0 ml_ebr0i ml_ecr0i ml_edfp0 ml_edfr0 ml_edfr1 ml_edr0i ml_eds ml_eer0i ml_egr0i ml_elf ml_elf_bfgs ml_elf_bhhh ml_elf_cycle ml_elf_dfp ml_elfi ml_elfs ml_enr0i ml_enrr0 ml_erdu0 ml_erdu0_bfgs ml_erdu0_bhhh ml_erdu0_bhhhq ml_erdu0_cycle ml_erdu0_dfp ml_erdu0_nrbfgs ml_exde ml_footnote ml_geqnr ml_grad0 ml_graph ml_hbhhh ml_hd0 ml_hold ml_init ml_inv ml_log ml_max ml_mlout ml_mlout_8 ml_model ml_nb0 ml_opt ml_p ml_plot ml_query ml_rdgrd ml_repor ml_s_e ml_score ml_searc ml_technique ml_unhold mleval mlf_ mlmatbysum mlmatsum mlog mlogi mlogit mlogit_footnote mlogit_p mlopts mlsum mlvecsum mnl0_ mor more mov move mprobit mprobit_lf mprobit_p mrdu0_ mrdu1_ mvdecode mvencode mvreg mvreg_estat n|0 nbreg nbreg_al nbreg_lf nbreg_p nbreg_sw nestreg net newey newey_7 newey_p news nl nl_7 nl_9 nl_9_p nl_p nl_p_7 nlcom nlcom_p nlexp2 nlexp2_7 nlexp2a nlexp2a_7 nlexp3 nlexp3_7 nlgom3 nlgom3_7 nlgom4 nlgom4_7 nlinit nllog3 nllog3_7 nllog4 nllog4_7 nlog_rd nlogit nlogit_p nlogitgen nlogittree nlpred no nobreak noi nois noisi noisil noisily note notes notes_dlg nptrend numlabel numlist odbc old_ver olo olog ologi ologi_sw ologit ologit_p ologitp on one onew onewa oneway op_colnm op_comp op_diff op_inv op_str opr opro oprob oprob_sw oprobi oprobi_p oprobit oprobitp opts_exclusive order orthog orthpoly ou out outf outfi outfil outfile outs outsh outshe outshee outsheet ovtest pac pac_7 palette parse parse_dissim pause pca pca_8 pca_display pca_estat pca_p pca_rotate pcamat pchart pchart_7 pchi pchi_7 pcorr pctile pentium pergram pergram_7 permute permute_8 personal peto_st pkcollapse pkcross pkequiv pkexamine pkexamine_7 pkshape pksumm pksumm_7 pl plo plot plugin pnorm pnorm_7 poisgof poiss_lf poiss_sw poisso_p poisson poisson_estat post postclose postfile postutil pperron pr prais prais_e prais_e2 prais_p predict predictnl preserve print pro prob probi probit probit_estat probit_p proc_time procoverlay procrustes procrustes_estat procrustes_p profiler prog progr progra program prop proportion prtest prtesti pwcorr pwd q\\\\s qby qbys qchi qchi_7 qladder qladder_7 qnorm qnorm_7 qqplot qqplot_7 qreg qreg_c qreg_p qreg_sw qu quadchk quantile quantile_7 que quer query range ranksum ratio rchart rchart_7 rcof recast reclink recode reg reg3 reg3_p regdw regr regre regre_p2 regres regres_p regress regress_estat regriv_p remap ren rena renam rename renpfix repeat replace report reshape restore ret retu retur return rm rmdir robvar roccomp roccomp_7 roccomp_8 rocf_lf rocfit rocfit_8 rocgold rocplot rocplot_7 roctab roctab_7 rolling rologit rologit_p rot rota rotat rotate rotatemat rreg rreg_p ru run runtest rvfplot rvfplot_7 rvpplot rvpplot_7 sa safesum sample sampsi sav save savedresults saveold sc sca scal scala scalar scatter scm_mine sco scob_lf scob_p scobi_sw scobit scor score scoreplot scoreplot_help scree screeplot screeplot_help sdtest sdtesti se search separate seperate serrbar serrbar_7 serset set set_defaults sfrancia sh she shel shell shewhart shewhart_7 signestimationsample signrank signtest simul simul_7 simulate simulate_8 sktest sleep slogit slogit_d2 slogit_p smooth snapspan so sor sort spearman spikeplot spikeplot_7 spikeplt spline_x split sqreg sqreg_p sret sretu sretur sreturn ssc st st_ct st_hc st_hcd st_hcd_sh st_is st_issys st_note st_promo st_set st_show st_smpl st_subid stack statsby statsby_8 stbase stci stci_7 stcox stcox_estat stcox_fr stcox_fr_ll stcox_p stcox_sw stcoxkm stcoxkm_7 stcstat stcurv stcurve stcurve_7 stdes stem stepwise stereg stfill stgen stir stjoin stmc stmh stphplot stphplot_7 stphtest stphtest_7 stptime strate strate_7 streg streg_sw streset sts sts_7 stset stsplit stsum sttocc sttoct stvary stweib su suest suest_8 sum summ summa summar summari summariz summarize sunflower sureg survcurv survsum svar svar_p svmat svy svy_disp svy_dreg svy_est svy_est_7 svy_estat svy_get svy_gnbreg_p svy_head svy_header svy_heckman_p svy_heckprob_p svy_intreg_p svy_ivreg_p svy_logistic_p svy_logit_p svy_mlogit_p svy_nbreg_p svy_ologit_p svy_oprobit_p svy_poisson_p svy_probit_p svy_regress_p svy_sub svy_sub_7 svy_x svy_x_7 svy_x_p svydes svydes_8 svygen svygnbreg svyheckman svyheckprob svyintreg svyintreg_7 svyintrg svyivreg svylc svylog_p svylogit svymarkout svymarkout_8 svymean svymlog svymlogit svynbreg svyolog svyologit svyoprob svyoprobit svyopts svypois svypois_7 svypoisson svyprobit svyprobt svyprop svyprop_7 svyratio svyreg svyreg_p svyregress svyset svyset_7 svyset_8 svytab svytab_7 svytest svytotal sw sw_8 swcnreg swcox swereg swilk swlogis swlogit swologit swoprbt swpois swprobit swqreg swtobit swweib symmetry symmi symplot symplot_7 syntax sysdescribe sysdir sysuse szroeter ta tab tab1 tab2 tab_or tabd tabdi tabdis tabdisp tabi table tabodds tabodds_7 tabstat tabu tabul tabula tabulat tabulate te tempfile tempname tempvar tes test testnl testparm teststd tetrachoric time_it timer tis tob tobi tobit tobit_p tobit_sw token tokeni tokeniz tokenize tostring total translate translator transmap treat_ll treatr_p treatreg trim trimfill trnb_cons trnb_mean trpoiss_d2 trunc_ll truncr_p truncreg tsappend tset tsfill tsline tsline_ex tsreport tsrevar tsrline tsset tssmooth tsunab ttest ttesti tut_chk tut_wait tutorial tw tware_st two twoway twoway__fpfit_serset twoway__function_gen twoway__histogram_gen twoway__ipoint_serset twoway__ipoints_serset twoway__kdensity_gen twoway__lfit_serset twoway__normgen_gen twoway__pci_serset twoway__qfit_serset twoway__scatteri_serset twoway__sunflower_gen twoway_ksm_serset ty typ type typeof u|0 unab unabbrev unabcmd update us use uselabel var var_mkcompanion var_p varbasic varfcast vargranger varirf varirf_add varirf_cgraph varirf_create varirf_ctable varirf_describe varirf_dir varirf_drop varirf_erase varirf_graph varirf_ograph varirf_rename varirf_set varirf_table varlist varlmar varnorm varsoc varstable varstable_w varstable_w2 varwle vce vec vec_fevd vec_mkphi vec_p vec_p_w vecirf_create veclmar veclmar_w vecnorm vecnorm_w vecrank vecstable verinst vers versi versio version view viewsource vif vwls wdatetof webdescribe webseek webuse weib1_lf weib2_lf weib_lf weib_lf0 weibhet_glf weibhet_glf_sh weibhet_glfa weibhet_glfa_sh weibhet_gp weibhet_ilf weibhet_ilf_sh weibhet_ilfa weibhet_ilfa_sh weibhet_ip weibu_sw weibul_p weibull weibull_c weibull_s weibullhet wh whelp whi which whil while wilc_st wilcoxon win wind windo window winexec wntestb wntestb_7 wntestq xchart xchart_7 xcorr xcorr_7 xi xi_6 xmlsav xmlsave xmluse xpose xsh xshe xshel xshell xt_iis xt_tis xtab_p xtabond xtbin_p xtclog xtcloglog xtcloglog_8 xtcloglog_d2 xtcloglog_pa_p xtcloglog_re_p xtcnt_p xtcorr xtdata xtdes xtfront_p xtfrontier xtgee xtgee_elink xtgee_estat xtgee_makeivar xtgee_p xtgee_plink xtgls xtgls_p xthaus xthausman xtht_p xthtaylor xtile xtint_p xtintreg xtintreg_8 xtintreg_d2 xtintreg_p xtivp_1 xtivp_2 xtivreg xtline xtline_ex xtlogit xtlogit_8 xtlogit_d2 xtlogit_fe_p xtlogit_pa_p xtlogit_re_p xtmixed xtmixed_estat xtmixed_p xtnb_fe xtnb_lf xtnbreg xtnbreg_pa_p xtnbreg_refe_p xtpcse xtpcse_p xtpois xtpoisson xtpoisson_d2 xtpoisson_pa_p xtpoisson_refe_p xtpred xtprobit xtprobit_8 xtprobit_d2 xtprobit_re_p xtps_fe xtps_lf xtps_ren xtps_ren_8 xtrar_p xtrc xtrc_p xtrchh xtrefe_p xtreg xtreg_be xtreg_fe xtreg_ml xtreg_pa_p xtreg_re xtregar xtrere_p xtset xtsf_ll xtsf_llti xtsum xttab xttest0 xttobit xttobit_8 xttobit_p xttrans yx yxview__barlike_draw yxview_area_draw yxview_bar_draw yxview_dot_draw yxview_dropline_draw yxview_function_draw yxview_iarrow_draw yxview_ilabels_draw yxview_normal_draw yxview_pcarrow_draw yxview_pcbarrow_draw yxview_pccapsym_draw yxview_pcscatter_draw yxview_pcspike_draw yxview_rarea_draw yxview_rbar_draw yxview_rbarm_draw yxview_rcap_draw yxview_rcapsym_draw yxview_rconnected_draw yxview_rline_draw yxview_rscatter_draw yxview_rspike_draw yxview_spike_draw yxview_sunflower_draw zap_s zinb zinb_llf zinb_plf zip zip_llf zip_p zip_plf zt_ct_5 zt_hc_5 zt_hcd_5 zt_is_5 zt_iss_5 zt_sho_5 zt_smp_5 ztbase_5 ztcox_5 ztdes_5 ztereg_5 ztfill_5 ztgen_5 ztir_5 ztjoin_5 ztnb ztnb_p ztp ztp_p zts_5 ztset_5 ztspli_5 ztsum_5 zttoct_5 ztvary_5 ztweib_5',\n contains: [\n {\n className: 'symbol',\n begin: /`[a-zA-Z0-9_]+'/\n },\n {\n className: 'variable',\n begin: /\\$\\{?[a-zA-Z0-9_]+\\}?/,\n relevance: 0\n },\n {\n className: 'string',\n variants: [\n { begin: '`\"[^\\r\\n]*?\"\\'' },\n { begin: '\"[^\\r\\n\"]*\"' }\n ]\n },\n\n {\n className: 'built_in',\n variants: [ { begin: '\\\\b(abs|acos|asin|atan|atan2|atanh|ceil|cloglog|comb|cos|digamma|exp|floor|invcloglog|invlogit|ln|lnfact|lnfactorial|lngamma|log|log10|max|min|mod|reldif|round|sign|sin|sqrt|sum|tan|tanh|trigamma|trunc|betaden|Binomial|binorm|binormal|chi2|chi2tail|dgammapda|dgammapdada|dgammapdadx|dgammapdx|dgammapdxdx|F|Fden|Ftail|gammaden|gammap|ibeta|invbinomial|invchi2|invchi2tail|invF|invFtail|invgammap|invibeta|invnchi2|invnFtail|invnibeta|invnorm|invnormal|invttail|nbetaden|nchi2|nFden|nFtail|nibeta|norm|normal|normalden|normd|npnchi2|tden|ttail|uniform|abbrev|char|index|indexnot|length|lower|ltrim|match|plural|proper|real|regexm|regexr|regexs|reverse|rtrim|string|strlen|strlower|strltrim|strmatch|strofreal|strpos|strproper|strreverse|strrtrim|strtrim|strupper|subinstr|subinword|substr|trim|upper|word|wordcount|_caller|autocode|byteorder|chop|clip|cond|e|epsdouble|epsfloat|group|inlist|inrange|irecode|matrix|maxbyte|maxdouble|maxfloat|maxint|maxlong|mi|minbyte|mindouble|minfloat|minint|minlong|missing|r|recode|replay|return|s|scalar|d|date|day|dow|doy|halfyear|mdy|month|quarter|week|year|d|daily|dofd|dofh|dofm|dofq|dofw|dofy|h|halfyearly|hofd|m|mofd|monthly|q|qofd|quarterly|tin|twithin|w|weekly|wofd|y|yearly|yh|ym|yofd|yq|yw|cholesky|colnumb|colsof|corr|det|diag|diag0cnt|el|get|hadamard|I|inv|invsym|issym|issymmetric|J|matmissing|matuniform|mreldif|nullmat|rownumb|rowsof|sweep|syminv|trace|vec|vecdiag)(?=\\\\()' } ]\n },\n\n hljs.COMMENT('^[ \\t]*\\\\*.*$', false),\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n };\n}\n\nmodule.exports = stata;\n","/*\nLanguage: STEP Part 21\nContributors: Adam Joseph Cook <adam.joseph.cook@gmail.com>\nDescription: Syntax highlighter for STEP Part 21 files (ISO 10303-21).\nWebsite: https://en.wikipedia.org/wiki/ISO_10303-21\n*/\n\nfunction step21(hljs) {\n const STEP21_IDENT_RE = '[A-Z_][A-Z0-9_.]*';\n const STEP21_KEYWORDS = {\n $pattern: STEP21_IDENT_RE,\n keyword: [\n \"HEADER\",\n \"ENDSEC\",\n \"DATA\"\n ]\n };\n const STEP21_START = {\n className: 'meta',\n begin: 'ISO-10303-21;',\n relevance: 10\n };\n const STEP21_CLOSE = {\n className: 'meta',\n begin: 'END-ISO-10303-21;',\n relevance: 10\n };\n\n return {\n name: 'STEP Part 21',\n aliases: [\n 'p21',\n 'step',\n 'stp'\n ],\n case_insensitive: true, // STEP 21 is case insensitive in theory, in practice all non-comments are capitalized.\n keywords: STEP21_KEYWORDS,\n contains: [\n STEP21_START,\n STEP21_CLOSE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.COMMENT('/\\\\*\\\\*!', '\\\\*/'),\n hljs.C_NUMBER_MODE,\n hljs.inherit(hljs.APOS_STRING_MODE, { illegal: null }),\n hljs.inherit(hljs.QUOTE_STRING_MODE, { illegal: null }),\n {\n className: 'string',\n begin: \"'\",\n end: \"'\"\n },\n {\n className: 'symbol',\n variants: [\n {\n begin: '#',\n end: '\\\\d+',\n illegal: '\\\\W'\n }\n ]\n }\n ]\n };\n}\n\nmodule.exports = step21;\n","const MODES = (hljs) => {\n return {\n IMPORTANT: {\n scope: 'meta',\n begin: '!important'\n },\n BLOCK_COMMENT: hljs.C_BLOCK_COMMENT_MODE,\n HEXCOLOR: {\n scope: 'number',\n begin: /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\\b/\n },\n FUNCTION_DISPATCH: {\n className: \"built_in\",\n begin: /[\\w-]+(?=\\()/\n },\n ATTRIBUTE_SELECTOR_MODE: {\n scope: 'selector-attr',\n begin: /\\[/,\n end: /\\]/,\n illegal: '$',\n contains: [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n },\n CSS_NUMBER_MODE: {\n scope: 'number',\n begin: hljs.NUMBER_RE + '(' +\n '%|em|ex|ch|rem' +\n '|vw|vh|vmin|vmax' +\n '|cm|mm|in|pt|pc|px' +\n '|deg|grad|rad|turn' +\n '|s|ms' +\n '|Hz|kHz' +\n '|dpi|dpcm|dppx' +\n ')?',\n relevance: 0\n },\n CSS_VARIABLE: {\n className: \"attr\",\n begin: /--[A-Za-z][A-Za-z0-9_-]*/\n }\n };\n};\n\nconst TAGS = [\n 'a',\n 'abbr',\n 'address',\n 'article',\n 'aside',\n 'audio',\n 'b',\n 'blockquote',\n 'body',\n 'button',\n 'canvas',\n 'caption',\n 'cite',\n 'code',\n 'dd',\n 'del',\n 'details',\n 'dfn',\n 'div',\n 'dl',\n 'dt',\n 'em',\n 'fieldset',\n 'figcaption',\n 'figure',\n 'footer',\n 'form',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'header',\n 'hgroup',\n 'html',\n 'i',\n 'iframe',\n 'img',\n 'input',\n 'ins',\n 'kbd',\n 'label',\n 'legend',\n 'li',\n 'main',\n 'mark',\n 'menu',\n 'nav',\n 'object',\n 'ol',\n 'p',\n 'q',\n 'quote',\n 'samp',\n 'section',\n 'span',\n 'strong',\n 'summary',\n 'sup',\n 'table',\n 'tbody',\n 'td',\n 'textarea',\n 'tfoot',\n 'th',\n 'thead',\n 'time',\n 'tr',\n 'ul',\n 'var',\n 'video'\n];\n\nconst MEDIA_FEATURES = [\n 'any-hover',\n 'any-pointer',\n 'aspect-ratio',\n 'color',\n 'color-gamut',\n 'color-index',\n 'device-aspect-ratio',\n 'device-height',\n 'device-width',\n 'display-mode',\n 'forced-colors',\n 'grid',\n 'height',\n 'hover',\n 'inverted-colors',\n 'monochrome',\n 'orientation',\n 'overflow-block',\n 'overflow-inline',\n 'pointer',\n 'prefers-color-scheme',\n 'prefers-contrast',\n 'prefers-reduced-motion',\n 'prefers-reduced-transparency',\n 'resolution',\n 'scan',\n 'scripting',\n 'update',\n 'width',\n // TODO: find a better solution?\n 'min-width',\n 'max-width',\n 'min-height',\n 'max-height'\n];\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes\nconst PSEUDO_CLASSES = [\n 'active',\n 'any-link',\n 'blank',\n 'checked',\n 'current',\n 'default',\n 'defined',\n 'dir', // dir()\n 'disabled',\n 'drop',\n 'empty',\n 'enabled',\n 'first',\n 'first-child',\n 'first-of-type',\n 'fullscreen',\n 'future',\n 'focus',\n 'focus-visible',\n 'focus-within',\n 'has', // has()\n 'host', // host or host()\n 'host-context', // host-context()\n 'hover',\n 'indeterminate',\n 'in-range',\n 'invalid',\n 'is', // is()\n 'lang', // lang()\n 'last-child',\n 'last-of-type',\n 'left',\n 'link',\n 'local-link',\n 'not', // not()\n 'nth-child', // nth-child()\n 'nth-col', // nth-col()\n 'nth-last-child', // nth-last-child()\n 'nth-last-col', // nth-last-col()\n 'nth-last-of-type', //nth-last-of-type()\n 'nth-of-type', //nth-of-type()\n 'only-child',\n 'only-of-type',\n 'optional',\n 'out-of-range',\n 'past',\n 'placeholder-shown',\n 'read-only',\n 'read-write',\n 'required',\n 'right',\n 'root',\n 'scope',\n 'target',\n 'target-within',\n 'user-invalid',\n 'valid',\n 'visited',\n 'where' // where()\n];\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-elements\nconst PSEUDO_ELEMENTS = [\n 'after',\n 'backdrop',\n 'before',\n 'cue',\n 'cue-region',\n 'first-letter',\n 'first-line',\n 'grammar-error',\n 'marker',\n 'part',\n 'placeholder',\n 'selection',\n 'slotted',\n 'spelling-error'\n];\n\nconst ATTRIBUTES = [\n 'align-content',\n 'align-items',\n 'align-self',\n 'all',\n 'animation',\n 'animation-delay',\n 'animation-direction',\n 'animation-duration',\n 'animation-fill-mode',\n 'animation-iteration-count',\n 'animation-name',\n 'animation-play-state',\n 'animation-timing-function',\n 'backface-visibility',\n 'background',\n 'background-attachment',\n 'background-blend-mode',\n 'background-clip',\n 'background-color',\n 'background-image',\n 'background-origin',\n 'background-position',\n 'background-repeat',\n 'background-size',\n 'block-size',\n 'border',\n 'border-block',\n 'border-block-color',\n 'border-block-end',\n 'border-block-end-color',\n 'border-block-end-style',\n 'border-block-end-width',\n 'border-block-start',\n 'border-block-start-color',\n 'border-block-start-style',\n 'border-block-start-width',\n 'border-block-style',\n 'border-block-width',\n 'border-bottom',\n 'border-bottom-color',\n 'border-bottom-left-radius',\n 'border-bottom-right-radius',\n 'border-bottom-style',\n 'border-bottom-width',\n 'border-collapse',\n 'border-color',\n 'border-image',\n 'border-image-outset',\n 'border-image-repeat',\n 'border-image-slice',\n 'border-image-source',\n 'border-image-width',\n 'border-inline',\n 'border-inline-color',\n 'border-inline-end',\n 'border-inline-end-color',\n 'border-inline-end-style',\n 'border-inline-end-width',\n 'border-inline-start',\n 'border-inline-start-color',\n 'border-inline-start-style',\n 'border-inline-start-width',\n 'border-inline-style',\n 'border-inline-width',\n 'border-left',\n 'border-left-color',\n 'border-left-style',\n 'border-left-width',\n 'border-radius',\n 'border-right',\n 'border-right-color',\n 'border-right-style',\n 'border-right-width',\n 'border-spacing',\n 'border-style',\n 'border-top',\n 'border-top-color',\n 'border-top-left-radius',\n 'border-top-right-radius',\n 'border-top-style',\n 'border-top-width',\n 'border-width',\n 'bottom',\n 'box-decoration-break',\n 'box-shadow',\n 'box-sizing',\n 'break-after',\n 'break-before',\n 'break-inside',\n 'caption-side',\n 'caret-color',\n 'clear',\n 'clip',\n 'clip-path',\n 'clip-rule',\n 'color',\n 'column-count',\n 'column-fill',\n 'column-gap',\n 'column-rule',\n 'column-rule-color',\n 'column-rule-style',\n 'column-rule-width',\n 'column-span',\n 'column-width',\n 'columns',\n 'contain',\n 'content',\n 'content-visibility',\n 'counter-increment',\n 'counter-reset',\n 'cue',\n 'cue-after',\n 'cue-before',\n 'cursor',\n 'direction',\n 'display',\n 'empty-cells',\n 'filter',\n 'flex',\n 'flex-basis',\n 'flex-direction',\n 'flex-flow',\n 'flex-grow',\n 'flex-shrink',\n 'flex-wrap',\n 'float',\n 'flow',\n 'font',\n 'font-display',\n 'font-family',\n 'font-feature-settings',\n 'font-kerning',\n 'font-language-override',\n 'font-size',\n 'font-size-adjust',\n 'font-smoothing',\n 'font-stretch',\n 'font-style',\n 'font-synthesis',\n 'font-variant',\n 'font-variant-caps',\n 'font-variant-east-asian',\n 'font-variant-ligatures',\n 'font-variant-numeric',\n 'font-variant-position',\n 'font-variation-settings',\n 'font-weight',\n 'gap',\n 'glyph-orientation-vertical',\n 'grid',\n 'grid-area',\n 'grid-auto-columns',\n 'grid-auto-flow',\n 'grid-auto-rows',\n 'grid-column',\n 'grid-column-end',\n 'grid-column-start',\n 'grid-gap',\n 'grid-row',\n 'grid-row-end',\n 'grid-row-start',\n 'grid-template',\n 'grid-template-areas',\n 'grid-template-columns',\n 'grid-template-rows',\n 'hanging-punctuation',\n 'height',\n 'hyphens',\n 'icon',\n 'image-orientation',\n 'image-rendering',\n 'image-resolution',\n 'ime-mode',\n 'inline-size',\n 'isolation',\n 'justify-content',\n 'left',\n 'letter-spacing',\n 'line-break',\n 'line-height',\n 'list-style',\n 'list-style-image',\n 'list-style-position',\n 'list-style-type',\n 'margin',\n 'margin-block',\n 'margin-block-end',\n 'margin-block-start',\n 'margin-bottom',\n 'margin-inline',\n 'margin-inline-end',\n 'margin-inline-start',\n 'margin-left',\n 'margin-right',\n 'margin-top',\n 'marks',\n 'mask',\n 'mask-border',\n 'mask-border-mode',\n 'mask-border-outset',\n 'mask-border-repeat',\n 'mask-border-slice',\n 'mask-border-source',\n 'mask-border-width',\n 'mask-clip',\n 'mask-composite',\n 'mask-image',\n 'mask-mode',\n 'mask-origin',\n 'mask-position',\n 'mask-repeat',\n 'mask-size',\n 'mask-type',\n 'max-block-size',\n 'max-height',\n 'max-inline-size',\n 'max-width',\n 'min-block-size',\n 'min-height',\n 'min-inline-size',\n 'min-width',\n 'mix-blend-mode',\n 'nav-down',\n 'nav-index',\n 'nav-left',\n 'nav-right',\n 'nav-up',\n 'none',\n 'normal',\n 'object-fit',\n 'object-position',\n 'opacity',\n 'order',\n 'orphans',\n 'outline',\n 'outline-color',\n 'outline-offset',\n 'outline-style',\n 'outline-width',\n 'overflow',\n 'overflow-wrap',\n 'overflow-x',\n 'overflow-y',\n 'padding',\n 'padding-block',\n 'padding-block-end',\n 'padding-block-start',\n 'padding-bottom',\n 'padding-inline',\n 'padding-inline-end',\n 'padding-inline-start',\n 'padding-left',\n 'padding-right',\n 'padding-top',\n 'page-break-after',\n 'page-break-before',\n 'page-break-inside',\n 'pause',\n 'pause-after',\n 'pause-before',\n 'perspective',\n 'perspective-origin',\n 'pointer-events',\n 'position',\n 'quotes',\n 'resize',\n 'rest',\n 'rest-after',\n 'rest-before',\n 'right',\n 'row-gap',\n 'scroll-margin',\n 'scroll-margin-block',\n 'scroll-margin-block-end',\n 'scroll-margin-block-start',\n 'scroll-margin-bottom',\n 'scroll-margin-inline',\n 'scroll-margin-inline-end',\n 'scroll-margin-inline-start',\n 'scroll-margin-left',\n 'scroll-margin-right',\n 'scroll-margin-top',\n 'scroll-padding',\n 'scroll-padding-block',\n 'scroll-padding-block-end',\n 'scroll-padding-block-start',\n 'scroll-padding-bottom',\n 'scroll-padding-inline',\n 'scroll-padding-inline-end',\n 'scroll-padding-inline-start',\n 'scroll-padding-left',\n 'scroll-padding-right',\n 'scroll-padding-top',\n 'scroll-snap-align',\n 'scroll-snap-stop',\n 'scroll-snap-type',\n 'scrollbar-color',\n 'scrollbar-gutter',\n 'scrollbar-width',\n 'shape-image-threshold',\n 'shape-margin',\n 'shape-outside',\n 'speak',\n 'speak-as',\n 'src', // @font-face\n 'tab-size',\n 'table-layout',\n 'text-align',\n 'text-align-all',\n 'text-align-last',\n 'text-combine-upright',\n 'text-decoration',\n 'text-decoration-color',\n 'text-decoration-line',\n 'text-decoration-style',\n 'text-emphasis',\n 'text-emphasis-color',\n 'text-emphasis-position',\n 'text-emphasis-style',\n 'text-indent',\n 'text-justify',\n 'text-orientation',\n 'text-overflow',\n 'text-rendering',\n 'text-shadow',\n 'text-transform',\n 'text-underline-position',\n 'top',\n 'transform',\n 'transform-box',\n 'transform-origin',\n 'transform-style',\n 'transition',\n 'transition-delay',\n 'transition-duration',\n 'transition-property',\n 'transition-timing-function',\n 'unicode-bidi',\n 'vertical-align',\n 'visibility',\n 'voice-balance',\n 'voice-duration',\n 'voice-family',\n 'voice-pitch',\n 'voice-range',\n 'voice-rate',\n 'voice-stress',\n 'voice-volume',\n 'white-space',\n 'widows',\n 'width',\n 'will-change',\n 'word-break',\n 'word-spacing',\n 'word-wrap',\n 'writing-mode',\n 'z-index'\n // reverse makes sure longer attributes `font-weight` are matched fully\n // instead of getting false positives on say `font`\n].reverse();\n\n/*\nLanguage: Stylus\nAuthor: Bryant Williams <b.n.williams@gmail.com>\nDescription: Stylus is an expressive, robust, feature-rich CSS language built for nodejs.\nWebsite: https://github.com/stylus/stylus\nCategory: css, web\n*/\n\n/** @type LanguageFn */\nfunction stylus(hljs) {\n const modes = MODES(hljs);\n\n const AT_MODIFIERS = \"and or not only\";\n const VARIABLE = {\n className: 'variable',\n begin: '\\\\$' + hljs.IDENT_RE\n };\n\n const AT_KEYWORDS = [\n 'charset',\n 'css',\n 'debug',\n 'extend',\n 'font-face',\n 'for',\n 'import',\n 'include',\n 'keyframes',\n 'media',\n 'mixin',\n 'page',\n 'warn',\n 'while'\n ];\n\n const LOOKAHEAD_TAG_END = '(?=[.\\\\s\\\\n[:,(])';\n\n // illegals\n const ILLEGAL = [\n '\\\\?',\n '(\\\\bReturn\\\\b)', // monkey\n '(\\\\bEnd\\\\b)', // monkey\n '(\\\\bend\\\\b)', // vbscript\n '(\\\\bdef\\\\b)', // gradle\n ';', // a whole lot of languages\n '#\\\\s', // markdown\n '\\\\*\\\\s', // markdown\n '===\\\\s', // markdown\n '\\\\|',\n '%' // prolog\n ];\n\n return {\n name: 'Stylus',\n aliases: [ 'styl' ],\n case_insensitive: false,\n keywords: 'if else for in',\n illegal: '(' + ILLEGAL.join('|') + ')',\n contains: [\n\n // strings\n hljs.QUOTE_STRING_MODE,\n hljs.APOS_STRING_MODE,\n\n // comments\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n\n // hex colors\n modes.HEXCOLOR,\n\n // class tag\n {\n begin: '\\\\.[a-zA-Z][a-zA-Z0-9_-]*' + LOOKAHEAD_TAG_END,\n className: 'selector-class'\n },\n\n // id tag\n {\n begin: '#[a-zA-Z][a-zA-Z0-9_-]*' + LOOKAHEAD_TAG_END,\n className: 'selector-id'\n },\n\n // tags\n {\n begin: '\\\\b(' + TAGS.join('|') + ')' + LOOKAHEAD_TAG_END,\n className: 'selector-tag'\n },\n\n // psuedo selectors\n {\n className: 'selector-pseudo',\n begin: '&?:(' + PSEUDO_CLASSES.join('|') + ')' + LOOKAHEAD_TAG_END\n },\n {\n className: 'selector-pseudo',\n begin: '&?:(:)?(' + PSEUDO_ELEMENTS.join('|') + ')' + LOOKAHEAD_TAG_END\n },\n\n modes.ATTRIBUTE_SELECTOR_MODE,\n\n {\n className: \"keyword\",\n begin: /@media/,\n starts: {\n end: /[{;}]/,\n keywords: {\n $pattern: /[a-z-]+/,\n keyword: AT_MODIFIERS,\n attribute: MEDIA_FEATURES.join(\" \")\n },\n contains: [ modes.CSS_NUMBER_MODE ]\n }\n },\n\n // @ keywords\n {\n className: 'keyword',\n begin: '\\@((-(o|moz|ms|webkit)-)?(' + AT_KEYWORDS.join('|') + '))\\\\b'\n },\n\n // variables\n VARIABLE,\n\n // dimension\n modes.CSS_NUMBER_MODE,\n\n // functions\n // - only from beginning of line + whitespace\n {\n className: 'function',\n begin: '^[a-zA-Z][a-zA-Z0-9_\\-]*\\\\(.*\\\\)',\n illegal: '[\\\\n]',\n returnBegin: true,\n contains: [\n {\n className: 'title',\n begin: '\\\\b[a-zA-Z][a-zA-Z0-9_\\-]*'\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n contains: [\n modes.HEXCOLOR,\n VARIABLE,\n hljs.APOS_STRING_MODE,\n modes.CSS_NUMBER_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n }\n ]\n },\n\n // css variables\n modes.CSS_VARIABLE,\n\n // attributes\n // - only from beginning of line + whitespace\n // - must have whitespace after it\n {\n className: 'attribute',\n begin: '\\\\b(' + ATTRIBUTES.join('|') + ')\\\\b',\n starts: {\n // value container\n end: /;|$/,\n contains: [\n modes.HEXCOLOR,\n VARIABLE,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n modes.CSS_NUMBER_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n modes.IMPORTANT\n ],\n illegal: /\\./,\n relevance: 0\n }\n },\n modes.FUNCTION_DISPATCH\n ]\n };\n}\n\nmodule.exports = stylus;\n","/*\nLanguage: SubUnit\nAuthor: Sergey Bronnikov <sergeyb@bronevichok.ru>\nWebsite: https://pypi.org/project/python-subunit/\n*/\n\nfunction subunit(hljs) {\n const DETAILS = {\n className: 'string',\n begin: '\\\\[\\n(multipart)?',\n end: '\\\\]\\n'\n };\n const TIME = {\n className: 'string',\n begin: '\\\\d{4}-\\\\d{2}-\\\\d{2}(\\\\s+)\\\\d{2}:\\\\d{2}:\\\\d{2}\\.\\\\d+Z'\n };\n const PROGRESSVALUE = {\n className: 'string',\n begin: '(\\\\+|-)\\\\d+'\n };\n const KEYWORDS = {\n className: 'keyword',\n relevance: 10,\n variants: [\n { begin: '^(test|testing|success|successful|failure|error|skip|xfail|uxsuccess)(:?)\\\\s+(test)?' },\n { begin: '^progress(:?)(\\\\s+)?(pop|push)?' },\n { begin: '^tags:' },\n { begin: '^time:' }\n ]\n };\n return {\n name: 'SubUnit',\n case_insensitive: true,\n contains: [\n DETAILS,\n TIME,\n PROGRESSVALUE,\n KEYWORDS\n ]\n };\n}\n\nmodule.exports = subunit;\n","/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction lookahead(re) {\n return concat('(?=', re, ')');\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/**\n * @param { Array<string | RegExp | Object> } args\n * @returns {object}\n */\nfunction stripOptionsFromArgs(args) {\n const opts = args[args.length - 1];\n\n if (typeof opts === 'object' && opts.constructor === Object) {\n args.splice(args.length - 1, 1);\n return opts;\n } else {\n return {};\n }\n}\n\n/** @typedef { {capture?: boolean} } RegexEitherOptions */\n\n/**\n * Any of the passed expresssions may match\n *\n * Creates a huge this | this | that | that match\n * @param {(RegExp | string)[] | [...(RegExp | string)[], RegexEitherOptions]} args\n * @returns {string}\n */\nfunction either(...args) {\n /** @type { object & {capture?: boolean} } */\n const opts = stripOptionsFromArgs(args);\n const joined = '('\n + (opts.capture ? \"\" : \"?:\")\n + args.map((x) => source(x)).join(\"|\") + \")\";\n return joined;\n}\n\nconst keywordWrapper = keyword => concat(\n /\\b/,\n keyword,\n /\\w$/.test(keyword) ? /\\b/ : /\\B/\n);\n\n// Keywords that require a leading dot.\nconst dotKeywords = [\n 'Protocol', // contextual\n 'Type' // contextual\n].map(keywordWrapper);\n\n// Keywords that may have a leading dot.\nconst optionalDotKeywords = [\n 'init',\n 'self'\n].map(keywordWrapper);\n\n// should register as keyword, not type\nconst keywordTypes = [\n 'Any',\n 'Self'\n];\n\n// Regular keywords and literals.\nconst keywords = [\n // strings below will be fed into the regular `keywords` engine while regex\n // will result in additional modes being created to scan for those keywords to\n // avoid conflicts with other rules\n 'actor',\n 'associatedtype',\n 'async',\n 'await',\n /as\\?/, // operator\n /as!/, // operator\n 'as', // operator\n 'break',\n 'case',\n 'catch',\n 'class',\n 'continue',\n 'convenience', // contextual\n 'default',\n 'defer',\n 'deinit',\n 'didSet', // contextual\n 'do',\n 'dynamic', // contextual\n 'else',\n 'enum',\n 'extension',\n 'fallthrough',\n /fileprivate\\(set\\)/,\n 'fileprivate',\n 'final', // contextual\n 'for',\n 'func',\n 'get', // contextual\n 'guard',\n 'if',\n 'import',\n 'indirect', // contextual\n 'infix', // contextual\n /init\\?/,\n /init!/,\n 'inout',\n /internal\\(set\\)/,\n 'internal',\n 'in',\n 'is', // operator\n 'isolated', // contextual\n 'nonisolated', // contextual\n 'lazy', // contextual\n 'let',\n 'mutating', // contextual\n 'nonmutating', // contextual\n /open\\(set\\)/, // contextual\n 'open', // contextual\n 'operator',\n 'optional', // contextual\n 'override', // contextual\n 'postfix', // contextual\n 'precedencegroup',\n 'prefix', // contextual\n /private\\(set\\)/,\n 'private',\n 'protocol',\n /public\\(set\\)/,\n 'public',\n 'repeat',\n 'required', // contextual\n 'rethrows',\n 'return',\n 'set', // contextual\n 'some', // contextual\n 'static',\n 'struct',\n 'subscript',\n 'super',\n 'switch',\n 'throws',\n 'throw',\n /try\\?/, // operator\n /try!/, // operator\n 'try', // operator\n 'typealias',\n /unowned\\(safe\\)/, // contextual\n /unowned\\(unsafe\\)/, // contextual\n 'unowned', // contextual\n 'var',\n 'weak', // contextual\n 'where',\n 'while',\n 'willSet' // contextual\n];\n\n// NOTE: Contextual keywords are reserved only in specific contexts.\n// Ideally, these should be matched using modes to avoid false positives.\n\n// Literals.\nconst literals = [\n 'false',\n 'nil',\n 'true'\n];\n\n// Keywords used in precedence groups.\nconst precedencegroupKeywords = [\n 'assignment',\n 'associativity',\n 'higherThan',\n 'left',\n 'lowerThan',\n 'none',\n 'right'\n];\n\n// Keywords that start with a number sign (#).\n// #(un)available is handled separately.\nconst numberSignKeywords = [\n '#colorLiteral',\n '#column',\n '#dsohandle',\n '#else',\n '#elseif',\n '#endif',\n '#error',\n '#file',\n '#fileID',\n '#fileLiteral',\n '#filePath',\n '#function',\n '#if',\n '#imageLiteral',\n '#keyPath',\n '#line',\n '#selector',\n '#sourceLocation',\n '#warn_unqualified_access',\n '#warning'\n];\n\n// Global functions in the Standard Library.\nconst builtIns = [\n 'abs',\n 'all',\n 'any',\n 'assert',\n 'assertionFailure',\n 'debugPrint',\n 'dump',\n 'fatalError',\n 'getVaList',\n 'isKnownUniquelyReferenced',\n 'max',\n 'min',\n 'numericCast',\n 'pointwiseMax',\n 'pointwiseMin',\n 'precondition',\n 'preconditionFailure',\n 'print',\n 'readLine',\n 'repeatElement',\n 'sequence',\n 'stride',\n 'swap',\n 'swift_unboxFromSwiftValueWithType',\n 'transcode',\n 'type',\n 'unsafeBitCast',\n 'unsafeDowncast',\n 'withExtendedLifetime',\n 'withUnsafeMutablePointer',\n 'withUnsafePointer',\n 'withVaList',\n 'withoutActuallyEscaping',\n 'zip'\n];\n\n// Valid first characters for operators.\nconst operatorHead = either(\n /[/=\\-+!*%<>&|^~?]/,\n /[\\u00A1-\\u00A7]/,\n /[\\u00A9\\u00AB]/,\n /[\\u00AC\\u00AE]/,\n /[\\u00B0\\u00B1]/,\n /[\\u00B6\\u00BB\\u00BF\\u00D7\\u00F7]/,\n /[\\u2016-\\u2017]/,\n /[\\u2020-\\u2027]/,\n /[\\u2030-\\u203E]/,\n /[\\u2041-\\u2053]/,\n /[\\u2055-\\u205E]/,\n /[\\u2190-\\u23FF]/,\n /[\\u2500-\\u2775]/,\n /[\\u2794-\\u2BFF]/,\n /[\\u2E00-\\u2E7F]/,\n /[\\u3001-\\u3003]/,\n /[\\u3008-\\u3020]/,\n /[\\u3030]/\n);\n\n// Valid characters for operators.\nconst operatorCharacter = either(\n operatorHead,\n /[\\u0300-\\u036F]/,\n /[\\u1DC0-\\u1DFF]/,\n /[\\u20D0-\\u20FF]/,\n /[\\uFE00-\\uFE0F]/,\n /[\\uFE20-\\uFE2F]/\n // TODO: The following characters are also allowed, but the regex isn't supported yet.\n // /[\\u{E0100}-\\u{E01EF}]/u\n);\n\n// Valid operator.\nconst operator = concat(operatorHead, operatorCharacter, '*');\n\n// Valid first characters for identifiers.\nconst identifierHead = either(\n /[a-zA-Z_]/,\n /[\\u00A8\\u00AA\\u00AD\\u00AF\\u00B2-\\u00B5\\u00B7-\\u00BA]/,\n /[\\u00BC-\\u00BE\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF]/,\n /[\\u0100-\\u02FF\\u0370-\\u167F\\u1681-\\u180D\\u180F-\\u1DBF]/,\n /[\\u1E00-\\u1FFF]/,\n /[\\u200B-\\u200D\\u202A-\\u202E\\u203F-\\u2040\\u2054\\u2060-\\u206F]/,\n /[\\u2070-\\u20CF\\u2100-\\u218F\\u2460-\\u24FF\\u2776-\\u2793]/,\n /[\\u2C00-\\u2DFF\\u2E80-\\u2FFF]/,\n /[\\u3004-\\u3007\\u3021-\\u302F\\u3031-\\u303F\\u3040-\\uD7FF]/,\n /[\\uF900-\\uFD3D\\uFD40-\\uFDCF\\uFDF0-\\uFE1F\\uFE30-\\uFE44]/,\n /[\\uFE47-\\uFEFE\\uFF00-\\uFFFD]/ // Should be /[\\uFE47-\\uFFFD]/, but we have to exclude FEFF.\n // The following characters are also allowed, but the regexes aren't supported yet.\n // /[\\u{10000}-\\u{1FFFD}\\u{20000-\\u{2FFFD}\\u{30000}-\\u{3FFFD}\\u{40000}-\\u{4FFFD}]/u,\n // /[\\u{50000}-\\u{5FFFD}\\u{60000-\\u{6FFFD}\\u{70000}-\\u{7FFFD}\\u{80000}-\\u{8FFFD}]/u,\n // /[\\u{90000}-\\u{9FFFD}\\u{A0000-\\u{AFFFD}\\u{B0000}-\\u{BFFFD}\\u{C0000}-\\u{CFFFD}]/u,\n // /[\\u{D0000}-\\u{DFFFD}\\u{E0000-\\u{EFFFD}]/u\n);\n\n// Valid characters for identifiers.\nconst identifierCharacter = either(\n identifierHead,\n /\\d/,\n /[\\u0300-\\u036F\\u1DC0-\\u1DFF\\u20D0-\\u20FF\\uFE20-\\uFE2F]/\n);\n\n// Valid identifier.\nconst identifier = concat(identifierHead, identifierCharacter, '*');\n\n// Valid type identifier.\nconst typeIdentifier = concat(/[A-Z]/, identifierCharacter, '*');\n\n// Built-in attributes, which are highlighted as keywords.\n// @available is handled separately.\nconst keywordAttributes = [\n 'autoclosure',\n concat(/convention\\(/, either('swift', 'block', 'c'), /\\)/),\n 'discardableResult',\n 'dynamicCallable',\n 'dynamicMemberLookup',\n 'escaping',\n 'frozen',\n 'GKInspectable',\n 'IBAction',\n 'IBDesignable',\n 'IBInspectable',\n 'IBOutlet',\n 'IBSegueAction',\n 'inlinable',\n 'main',\n 'nonobjc',\n 'NSApplicationMain',\n 'NSCopying',\n 'NSManaged',\n concat(/objc\\(/, identifier, /\\)/),\n 'objc',\n 'objcMembers',\n 'propertyWrapper',\n 'requires_stored_property_inits',\n 'resultBuilder',\n 'testable',\n 'UIApplicationMain',\n 'unknown',\n 'usableFromInline'\n];\n\n// Contextual keywords used in @available and #(un)available.\nconst availabilityKeywords = [\n 'iOS',\n 'iOSApplicationExtension',\n 'macOS',\n 'macOSApplicationExtension',\n 'macCatalyst',\n 'macCatalystApplicationExtension',\n 'watchOS',\n 'watchOSApplicationExtension',\n 'tvOS',\n 'tvOSApplicationExtension',\n 'swift'\n];\n\n/*\nLanguage: Swift\nDescription: Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.\nAuthor: Steven Van Impe <steven.vanimpe@icloud.com>\nContributors: Chris Eidhof <chris@eidhof.nl>, Nate Cook <natecook@gmail.com>, Alexander Lichter <manniL@gmx.net>, Richard Gibson <gibson042@github>\nWebsite: https://swift.org\nCategory: common, system\n*/\n\n/** @type LanguageFn */\nfunction swift(hljs) {\n const WHITESPACE = {\n match: /\\s+/,\n relevance: 0\n };\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID411\n const BLOCK_COMMENT = hljs.COMMENT(\n '/\\\\*',\n '\\\\*/',\n { contains: [ 'self' ] }\n );\n const COMMENTS = [\n hljs.C_LINE_COMMENT_MODE,\n BLOCK_COMMENT\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID413\n // https://docs.swift.org/swift-book/ReferenceManual/zzSummaryOfTheGrammar.html\n const DOT_KEYWORD = {\n match: [\n /\\./,\n either(...dotKeywords, ...optionalDotKeywords)\n ],\n className: { 2: \"keyword\" }\n };\n const KEYWORD_GUARD = {\n // Consume .keyword to prevent highlighting properties and methods as keywords.\n match: concat(/\\./, either(...keywords)),\n relevance: 0\n };\n const PLAIN_KEYWORDS = keywords\n .filter(kw => typeof kw === 'string')\n .concat([ \"_|0\" ]); // seems common, so 0 relevance\n const REGEX_KEYWORDS = keywords\n .filter(kw => typeof kw !== 'string') // find regex\n .concat(keywordTypes)\n .map(keywordWrapper);\n const KEYWORD = { variants: [\n {\n className: 'keyword',\n match: either(...REGEX_KEYWORDS, ...optionalDotKeywords)\n }\n ] };\n // find all the regular keywords\n const KEYWORDS = {\n $pattern: either(\n /\\b\\w+/, // regular keywords\n /#\\w+/ // number keywords\n ),\n keyword: PLAIN_KEYWORDS\n .concat(numberSignKeywords),\n literal: literals\n };\n const KEYWORD_MODES = [\n DOT_KEYWORD,\n KEYWORD_GUARD,\n KEYWORD\n ];\n\n // https://github.com/apple/swift/tree/main/stdlib/public/core\n const BUILT_IN_GUARD = {\n // Consume .built_in to prevent highlighting properties and methods.\n match: concat(/\\./, either(...builtIns)),\n relevance: 0\n };\n const BUILT_IN = {\n className: 'built_in',\n match: concat(/\\b/, either(...builtIns), /(?=\\()/)\n };\n const BUILT_INS = [\n BUILT_IN_GUARD,\n BUILT_IN\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID418\n const OPERATOR_GUARD = {\n // Prevent -> from being highlighting as an operator.\n match: /->/,\n relevance: 0\n };\n const OPERATOR = {\n className: 'operator',\n relevance: 0,\n variants: [\n { match: operator },\n {\n // dot-operator: only operators that start with a dot are allowed to use dots as\n // characters (..., ...<, .*, etc). So there rule here is: a dot followed by one or more\n // characters that may also include dots.\n match: `\\\\.(\\\\.|${operatorCharacter})+` }\n ]\n };\n const OPERATORS = [\n OPERATOR_GUARD,\n OPERATOR\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#grammar_numeric-literal\n // TODO: Update for leading `-` after lookbehind is supported everywhere\n const decimalDigits = '([0-9]_*)+';\n const hexDigits = '([0-9a-fA-F]_*)+';\n const NUMBER = {\n className: 'number',\n relevance: 0,\n variants: [\n // decimal floating-point-literal (subsumes decimal-literal)\n { match: `\\\\b(${decimalDigits})(\\\\.(${decimalDigits}))?` + `([eE][+-]?(${decimalDigits}))?\\\\b` },\n // hexadecimal floating-point-literal (subsumes hexadecimal-literal)\n { match: `\\\\b0x(${hexDigits})(\\\\.(${hexDigits}))?` + `([pP][+-]?(${decimalDigits}))?\\\\b` },\n // octal-literal\n { match: /\\b0o([0-7]_*)+\\b/ },\n // binary-literal\n { match: /\\b0b([01]_*)+\\b/ }\n ]\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#grammar_string-literal\n const ESCAPED_CHARACTER = (rawDelimiter = \"\") => ({\n className: 'subst',\n variants: [\n { match: concat(/\\\\/, rawDelimiter, /[0\\\\tnr\"']/) },\n { match: concat(/\\\\/, rawDelimiter, /u\\{[0-9a-fA-F]{1,8}\\}/) }\n ]\n });\n const ESCAPED_NEWLINE = (rawDelimiter = \"\") => ({\n className: 'subst',\n match: concat(/\\\\/, rawDelimiter, /[\\t ]*(?:[\\r\\n]|\\r\\n)/)\n });\n const INTERPOLATION = (rawDelimiter = \"\") => ({\n className: 'subst',\n label: \"interpol\",\n begin: concat(/\\\\/, rawDelimiter, /\\(/),\n end: /\\)/\n });\n const MULTILINE_STRING = (rawDelimiter = \"\") => ({\n begin: concat(rawDelimiter, /\"\"\"/),\n end: concat(/\"\"\"/, rawDelimiter),\n contains: [\n ESCAPED_CHARACTER(rawDelimiter),\n ESCAPED_NEWLINE(rawDelimiter),\n INTERPOLATION(rawDelimiter)\n ]\n });\n const SINGLE_LINE_STRING = (rawDelimiter = \"\") => ({\n begin: concat(rawDelimiter, /\"/),\n end: concat(/\"/, rawDelimiter),\n contains: [\n ESCAPED_CHARACTER(rawDelimiter),\n INTERPOLATION(rawDelimiter)\n ]\n });\n const STRING = {\n className: 'string',\n variants: [\n MULTILINE_STRING(),\n MULTILINE_STRING(\"#\"),\n MULTILINE_STRING(\"##\"),\n MULTILINE_STRING(\"###\"),\n SINGLE_LINE_STRING(),\n SINGLE_LINE_STRING(\"#\"),\n SINGLE_LINE_STRING(\"##\"),\n SINGLE_LINE_STRING(\"###\")\n ]\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID412\n const QUOTED_IDENTIFIER = { match: concat(/`/, identifier, /`/) };\n const IMPLICIT_PARAMETER = {\n className: 'variable',\n match: /\\$\\d+/\n };\n const PROPERTY_WRAPPER_PROJECTION = {\n className: 'variable',\n match: `\\\\$${identifierCharacter}+`\n };\n const IDENTIFIERS = [\n QUOTED_IDENTIFIER,\n IMPLICIT_PARAMETER,\n PROPERTY_WRAPPER_PROJECTION\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/Attributes.html\n const AVAILABLE_ATTRIBUTE = {\n match: /(@|#(un)?)available/,\n className: \"keyword\",\n starts: { contains: [\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: availabilityKeywords,\n contains: [\n ...OPERATORS,\n NUMBER,\n STRING\n ]\n }\n ] }\n };\n const KEYWORD_ATTRIBUTE = {\n className: 'keyword',\n match: concat(/@/, either(...keywordAttributes))\n };\n const USER_DEFINED_ATTRIBUTE = {\n className: 'meta',\n match: concat(/@/, identifier)\n };\n const ATTRIBUTES = [\n AVAILABLE_ATTRIBUTE,\n KEYWORD_ATTRIBUTE,\n USER_DEFINED_ATTRIBUTE\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/Types.html\n const TYPE = {\n match: lookahead(/\\b[A-Z]/),\n relevance: 0,\n contains: [\n { // Common Apple frameworks, for relevance boost\n className: 'type',\n match: concat(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/, identifierCharacter, '+')\n },\n { // Type identifier\n className: 'type',\n match: typeIdentifier,\n relevance: 0\n },\n { // Optional type\n match: /[?!]+/,\n relevance: 0\n },\n { // Variadic parameter\n match: /\\.\\.\\./,\n relevance: 0\n },\n { // Protocol composition\n match: concat(/\\s+&\\s+/, lookahead(typeIdentifier)),\n relevance: 0\n }\n ]\n };\n const GENERIC_ARGUMENTS = {\n begin: /</,\n end: />/,\n keywords: KEYWORDS,\n contains: [\n ...COMMENTS,\n ...KEYWORD_MODES,\n ...ATTRIBUTES,\n OPERATOR_GUARD,\n TYPE\n ]\n };\n TYPE.contains.push(GENERIC_ARGUMENTS);\n\n // https://docs.swift.org/swift-book/ReferenceManual/Expressions.html#ID552\n // Prevents element names from being highlighted as keywords.\n const TUPLE_ELEMENT_NAME = {\n match: concat(identifier, /\\s*:/),\n keywords: \"_|0\",\n relevance: 0\n };\n // Matches tuples as well as the parameter list of a function type.\n const TUPLE = {\n begin: /\\(/,\n end: /\\)/,\n relevance: 0,\n keywords: KEYWORDS,\n contains: [\n 'self',\n TUPLE_ELEMENT_NAME,\n ...COMMENTS,\n ...KEYWORD_MODES,\n ...BUILT_INS,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...IDENTIFIERS,\n ...ATTRIBUTES,\n TYPE\n ]\n };\n\n const GENERIC_PARAMETERS = {\n begin: /</,\n end: />/,\n contains: [\n ...COMMENTS,\n TYPE\n ]\n };\n const FUNCTION_PARAMETER_NAME = {\n begin: either(\n lookahead(concat(identifier, /\\s*:/)),\n lookahead(concat(identifier, /\\s+/, identifier, /\\s*:/))\n ),\n end: /:/,\n relevance: 0,\n contains: [\n {\n className: 'keyword',\n match: /\\b_\\b/\n },\n {\n className: 'params',\n match: identifier\n }\n ]\n };\n const FUNCTION_PARAMETERS = {\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: [\n FUNCTION_PARAMETER_NAME,\n ...COMMENTS,\n ...KEYWORD_MODES,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...ATTRIBUTES,\n TYPE,\n TUPLE\n ],\n endsParent: true,\n illegal: /[\"']/\n };\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID362\n const FUNCTION = {\n match: [\n /func/,\n /\\s+/,\n either(QUOTED_IDENTIFIER.match, identifier, operator)\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n GENERIC_PARAMETERS,\n FUNCTION_PARAMETERS,\n WHITESPACE\n ],\n illegal: [\n /\\[/,\n /%/\n ]\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID375\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID379\n const INIT_SUBSCRIPT = {\n match: [\n /\\b(?:subscript|init[?!]?)/,\n /\\s*(?=[<(])/,\n ],\n className: { 1: \"keyword\" },\n contains: [\n GENERIC_PARAMETERS,\n FUNCTION_PARAMETERS,\n WHITESPACE\n ],\n illegal: /\\[|%/\n };\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID380\n const OPERATOR_DECLARATION = {\n match: [\n /operator/,\n /\\s+/,\n operator\n ],\n className: {\n 1: \"keyword\",\n 3: \"title\"\n }\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID550\n const PRECEDENCEGROUP = {\n begin: [\n /precedencegroup/,\n /\\s+/,\n typeIdentifier\n ],\n className: {\n 1: \"keyword\",\n 3: \"title\"\n },\n contains: [ TYPE ],\n keywords: [\n ...precedencegroupKeywords,\n ...literals\n ],\n end: /}/\n };\n\n // Add supported submodes to string interpolation.\n for (const variant of STRING.variants) {\n const interpolation = variant.contains.find(mode => mode.label === \"interpol\");\n // TODO: Interpolation can contain any expression, so there's room for improvement here.\n interpolation.keywords = KEYWORDS;\n const submodes = [\n ...KEYWORD_MODES,\n ...BUILT_INS,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...IDENTIFIERS\n ];\n interpolation.contains = [\n ...submodes,\n {\n begin: /\\(/,\n end: /\\)/,\n contains: [\n 'self',\n ...submodes\n ]\n }\n ];\n }\n\n return {\n name: 'Swift',\n keywords: KEYWORDS,\n contains: [\n ...COMMENTS,\n FUNCTION,\n INIT_SUBSCRIPT,\n {\n beginKeywords: 'struct protocol class extension enum actor',\n end: '\\\\{',\n excludeEnd: true,\n keywords: KEYWORDS,\n contains: [\n hljs.inherit(hljs.TITLE_MODE, {\n className: \"title.class\",\n begin: /[A-Za-z$_][\\u00C0-\\u02B80-9A-Za-z$_]*/\n }),\n ...KEYWORD_MODES\n ]\n },\n OPERATOR_DECLARATION,\n PRECEDENCEGROUP,\n {\n beginKeywords: 'import',\n end: /$/,\n contains: [ ...COMMENTS ],\n relevance: 0\n },\n ...KEYWORD_MODES,\n ...BUILT_INS,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...IDENTIFIERS,\n ...ATTRIBUTES,\n TYPE,\n TUPLE\n ]\n };\n}\n\nmodule.exports = swift;\n","/*\nLanguage: Tagger Script\nAuthor: Philipp Wolfer <ph.wolfer@gmail.com>\nDescription: Syntax Highlighting for the Tagger Script as used by MusicBrainz Picard.\nWebsite: https://picard.musicbrainz.org\n */\nfunction taggerscript(hljs) {\n const NOOP = {\n className: 'comment',\n begin: /\\$noop\\(/,\n end: /\\)/,\n contains: [\n { begin: /\\\\[()]/ },\n {\n begin: /\\(/,\n end: /\\)/,\n contains: [\n { begin: /\\\\[()]/ },\n 'self'\n ]\n }\n ],\n relevance: 10\n };\n\n const FUNCTION = {\n className: 'keyword',\n begin: /\\$[_a-zA-Z0-9]+(?=\\()/\n };\n\n const VARIABLE = {\n className: 'variable',\n begin: /%[_a-zA-Z0-9:]+%/\n };\n\n const ESCAPE_SEQUENCE_UNICODE = {\n className: 'symbol',\n begin: /\\\\u[a-fA-F0-9]{4}/\n };\n\n const ESCAPE_SEQUENCE = {\n className: 'symbol',\n begin: /\\\\[\\\\nt$%,()]/\n };\n\n return {\n name: 'Tagger Script',\n contains: [\n NOOP,\n FUNCTION,\n VARIABLE,\n ESCAPE_SEQUENCE,\n ESCAPE_SEQUENCE_UNICODE\n ]\n };\n}\n\nmodule.exports = taggerscript;\n","/*\nLanguage: Test Anything Protocol\nDescription: TAP, the Test Anything Protocol, is a simple text-based interface between testing modules in a test harness.\nRequires: yaml.js\nAuthor: Sergey Bronnikov <sergeyb@bronevichok.ru>\nWebsite: https://testanything.org\n*/\n\nfunction tap(hljs) {\n return {\n name: 'Test Anything Protocol',\n case_insensitive: true,\n contains: [\n hljs.HASH_COMMENT_MODE,\n // version of format and total amount of testcases\n {\n className: 'meta',\n variants: [\n { begin: '^TAP version (\\\\d+)$' },\n { begin: '^1\\\\.\\\\.(\\\\d+)$' }\n ]\n },\n // YAML block\n {\n begin: /---$/,\n end: '\\\\.\\\\.\\\\.$',\n subLanguage: 'yaml',\n relevance: 0\n },\n // testcase number\n {\n className: 'number',\n begin: ' (\\\\d+) '\n },\n // testcase status and description\n {\n className: 'symbol',\n variants: [\n { begin: '^ok' },\n { begin: '^not ok' }\n ]\n }\n ]\n };\n}\n\nmodule.exports = tap;\n","/*\nLanguage: Tcl\nDescription: Tcl is a very simple programming language.\nAuthor: Radek Liska <radekliska@gmail.com>\nWebsite: https://www.tcl.tk/about/language.html\n*/\n\nfunction tcl(hljs) {\n const regex = hljs.regex;\n const TCL_IDENT = /[a-zA-Z_][a-zA-Z0-9_]*/;\n\n const NUMBER = {\n className: 'number',\n variants: [\n hljs.BINARY_NUMBER_MODE,\n hljs.C_NUMBER_MODE\n ]\n };\n\n const KEYWORDS = [\n \"after\",\n \"append\",\n \"apply\",\n \"array\",\n \"auto_execok\",\n \"auto_import\",\n \"auto_load\",\n \"auto_mkindex\",\n \"auto_mkindex_old\",\n \"auto_qualify\",\n \"auto_reset\",\n \"bgerror\",\n \"binary\",\n \"break\",\n \"catch\",\n \"cd\",\n \"chan\",\n \"clock\",\n \"close\",\n \"concat\",\n \"continue\",\n \"dde\",\n \"dict\",\n \"encoding\",\n \"eof\",\n \"error\",\n \"eval\",\n \"exec\",\n \"exit\",\n \"expr\",\n \"fblocked\",\n \"fconfigure\",\n \"fcopy\",\n \"file\",\n \"fileevent\",\n \"filename\",\n \"flush\",\n \"for\",\n \"foreach\",\n \"format\",\n \"gets\",\n \"glob\",\n \"global\",\n \"history\",\n \"http\",\n \"if\",\n \"incr\",\n \"info\",\n \"interp\",\n \"join\",\n \"lappend|10\",\n \"lassign|10\",\n \"lindex|10\",\n \"linsert|10\",\n \"list\",\n \"llength|10\",\n \"load\",\n \"lrange|10\",\n \"lrepeat|10\",\n \"lreplace|10\",\n \"lreverse|10\",\n \"lsearch|10\",\n \"lset|10\",\n \"lsort|10\",\n \"mathfunc\",\n \"mathop\",\n \"memory\",\n \"msgcat\",\n \"namespace\",\n \"open\",\n \"package\",\n \"parray\",\n \"pid\",\n \"pkg::create\",\n \"pkg_mkIndex\",\n \"platform\",\n \"platform::shell\",\n \"proc\",\n \"puts\",\n \"pwd\",\n \"read\",\n \"refchan\",\n \"regexp\",\n \"registry\",\n \"regsub|10\",\n \"rename\",\n \"return\",\n \"safe\",\n \"scan\",\n \"seek\",\n \"set\",\n \"socket\",\n \"source\",\n \"split\",\n \"string\",\n \"subst\",\n \"switch\",\n \"tcl_endOfWord\",\n \"tcl_findLibrary\",\n \"tcl_startOfNextWord\",\n \"tcl_startOfPreviousWord\",\n \"tcl_wordBreakAfter\",\n \"tcl_wordBreakBefore\",\n \"tcltest\",\n \"tclvars\",\n \"tell\",\n \"time\",\n \"tm\",\n \"trace\",\n \"unknown\",\n \"unload\",\n \"unset\",\n \"update\",\n \"uplevel\",\n \"upvar\",\n \"variable\",\n \"vwait\",\n \"while\"\n ];\n\n return {\n name: 'Tcl',\n aliases: [ 'tk' ],\n keywords: KEYWORDS,\n contains: [\n hljs.COMMENT(';[ \\\\t]*#', '$'),\n hljs.COMMENT('^[ \\\\t]*#', '$'),\n {\n beginKeywords: 'proc',\n end: '[\\\\{]',\n excludeEnd: true,\n contains: [\n {\n className: 'title',\n begin: '[ \\\\t\\\\n\\\\r]+(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*',\n end: '[ \\\\t\\\\n\\\\r]',\n endsWithParent: true,\n excludeEnd: true\n }\n ]\n },\n {\n className: \"variable\",\n variants: [\n { begin: regex.concat(\n /\\$/,\n regex.optional(/::/),\n TCL_IDENT,\n '(::',\n TCL_IDENT,\n ')*'\n ) },\n {\n begin: '\\\\$\\\\{(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*',\n end: '\\\\}',\n contains: [ NUMBER ]\n }\n ]\n },\n {\n className: 'string',\n contains: [ hljs.BACKSLASH_ESCAPE ],\n variants: [ hljs.inherit(hljs.QUOTE_STRING_MODE, { illegal: null }) ]\n },\n NUMBER\n ]\n };\n}\n\nmodule.exports = tcl;\n","/*\nLanguage: Thrift\nAuthor: Oleg Efimov <efimovov@gmail.com>\nDescription: Thrift message definition format\nWebsite: https://thrift.apache.org\nCategory: protocols\n*/\n\nfunction thrift(hljs) {\n const TYPES = [\n \"bool\",\n \"byte\",\n \"i16\",\n \"i32\",\n \"i64\",\n \"double\",\n \"string\",\n \"binary\"\n ];\n const KEYWORDS = [\n \"namespace\",\n \"const\",\n \"typedef\",\n \"struct\",\n \"enum\",\n \"service\",\n \"exception\",\n \"void\",\n \"oneway\",\n \"set\",\n \"list\",\n \"map\",\n \"required\",\n \"optional\"\n ];\n return {\n name: 'Thrift',\n keywords: {\n keyword: KEYWORDS,\n type: TYPES,\n literal: 'true false'\n },\n contains: [\n hljs.QUOTE_STRING_MODE,\n hljs.NUMBER_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n {\n className: 'class',\n beginKeywords: 'struct enum service exception',\n end: /\\{/,\n illegal: /\\n/,\n contains: [\n hljs.inherit(hljs.TITLE_MODE, {\n // hack: eating everything after the first title\n starts: {\n endsWithParent: true,\n excludeEnd: true\n } })\n ]\n },\n {\n begin: '\\\\b(set|list|map)\\\\s*<',\n keywords: { type: [\n ...TYPES,\n \"set\",\n \"list\",\n \"map\"\n ] },\n end: '>',\n contains: [ 'self' ]\n }\n ]\n };\n}\n\nmodule.exports = thrift;\n"],"names":["module","exports","hljs","name","aliases","keywords","$pattern","keyword","literal","built_in","type","contains","C_LINE_COMMENT_MODE","QUOTE_STRING_MODE","C_NUMBER_MODE","QML_IDENT_RE","ID_ID","className","begin","starts","end","returnEnd","QML_ATTRIBUTE","returnBegin","excludeEnd","relevance","QML_OBJECT","regex","concat","inherit","TITLE_MODE","case_insensitive","APOS_STRING_MODE","BACKSLASH_ESCAPE","C_BLOCK_COMMENT_MODE","variants","C_NUMBER_RE","RE_STARTERS_RE","REGEXP_MODE","subLanguage","beginKeywords","excludeBegin","illegal","IDENT_RE","NUMBER_TYPES_RE","either","OPERATORS_RE","PUNCTUATION_RE","COMMENT","scope","match","lookahead","endsParent","HASH_COMMENT_MODE","END_SAME_AS_BEGIN","RE_IDENT","RE_MODULE_IDENT","RE_OPERATOR","map","op","split","char","join","RE_OPERATOR_SPACED","KEYWORDS","RE_NUMBER","NUMBER_MODE","OPERATOR_MODE","LIST_CONTENTS_MODES","MODULE_ACCESS_CONTENTS","PARAMS_CONTENTS","FUNCTION_BLOCK_MODE","push","CONSTRUCTOR_MODE","PATTERN_MATCH_BLOCK_MODE","MODULE_ACCESS_MODE","skip","IDENTIFIER","PROPERTY","STATEMENTS","LITERALS","VAR","QUOTE_STRING","APOS_STRING","endsWithParent","CLASS_DEFINITION","RUBY_METHOD_RE","CLASS_NAME_RE","CLASS_NAME_WITH_NAMESPACE_RE","RUBY_KEYWORDS","YARDOCTAG","IRB_OBJECT","COMMENT_MODES","MATCH_NOTHING_RE","SUBST","STRING","digits","NUMBER","PARAMS","RUBY_DEFAULT_CONTAINS","UNDERSCORE_IDENT_RE","IRB_DEFAULT","unshift","SHEBANG","binary","FUNCTION_INVOKE","NUMBER_SUFFIX","BUILTINS","TYPE","NAME","CLASS","METHOD","beginScope","SCHEME_IDENT_RE","SCHEME_SIMPLE_NUMBER_RE","LITERAL","IDENT","QUOTED_IDENT","BODY","QUOTED_LIST","LIST","COMMON_CONTAINS","UNDERSCORE_TITLE_MODE","TAGS","MEDIA_FEATURES","PSEUDO_CLASSES","PSEUDO_ELEMENTS","ATTRIBUTES","reverse","modes","IMPORTANT","BLOCK_COMMENT","HEXCOLOR","FUNCTION_DISPATCH","ATTRIBUTE_SELECTOR_MODE","CSS_NUMBER_MODE","NUMBER_RE","CSS_VARIABLE","MODES","PSEUDO_ELEMENTS$1","PSEUDO_CLASSES$1","AT_IDENTIFIER","VARIABLE","attribute","smali_instr_low_prio","VAR_IDENT_RE","CHAR","SYMBOL","STRINGS","PREPROCESSOR","COMMENT_MODE","TYPES","RESERVED_FUNCTIONS","COMBOS","FUNCTIONS","filter","includes","FUNCTION_CALL","list","exceptions","when","qualifyFn","item","reduceRelevancy","x","length","DISTRIBUTIONS","INCLUDE","RANGE_CONSTRAINTS","title","LOOKAHEAD_TAG_END","source","re","args","opts","constructor","Object","splice","stripOptionsFromArgs","capture","keywordWrapper","test","dotKeywords","optionalDotKeywords","keywordTypes","literals","precedencegroupKeywords","numberSignKeywords","builtIns","operatorHead","operatorCharacter","operator","identifierHead","identifierCharacter","identifier","typeIdentifier","keywordAttributes","availabilityKeywords","WHITESPACE","COMMENTS","DOT_KEYWORD","KEYWORD_GUARD","PLAIN_KEYWORDS","kw","KEYWORD","KEYWORD_MODES","BUILT_INS","OPERATOR_GUARD","OPERATORS","hexDigits","ESCAPED_CHARACTER","rawDelimiter","ESCAPED_NEWLINE","INTERPOLATION","label","MULTILINE_STRING","SINGLE_LINE_STRING","QUOTED_IDENTIFIER","IDENTIFIERS","GENERIC_ARGUMENTS","TUPLE","GENERIC_PARAMETERS","FUNCTION_PARAMETERS","FUNCTION","INIT_SUBSCRIPT","OPERATOR_DECLARATION","PRECEDENCEGROUP","variant","interpolation","find","mode","submodes","TCL_IDENT","BINARY_NUMBER_MODE","optional"],"sourceRoot":""}