var e=`as.in.of.if.for.while.finally.var.new.function.do.return.void.else.break.catch.instanceof.with.throw.case.default.try.switch.continue.typeof.delete.let.yield.const.class.debugger.async.await.static.import.from.export.extends.using`.split(`.`),t=[`true`,`false`,`null`,`undefined`,`NaN`,`Infinity`],n=[`setInterval`,`setTimeout`,`clearInterval`,`clearTimeout`,`require`,`exports`,`eval`,`isFinite`,`isNaN`,`parseFloat`,`parseInt`,`decodeURI`,`decodeURIComponent`,`encodeURI`,`encodeURIComponent`,`escape`,`unescape`].concat(`Object.Function.Boolean.Symbol.Math.Date.Number.BigInt.String.RegExp.Array.Float32Array.Float64Array.Int8Array.Uint8Array.Uint8ClampedArray.Int16Array.Int32Array.Uint16Array.Uint32Array.BigInt64Array.BigUint64Array.Set.Map.WeakSet.WeakMap.ArrayBuffer.SharedArrayBuffer.Atomics.DataView.JSON.Promise.Generator.GeneratorFunction.AsyncFunction.Reflect.Proxy.Intl.WebAssembly`.split(`.`),[`Error`,`EvalError`,`InternalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`]);function r(r){let i={keyword:e.concat([`then`,`unless`,`until`,`loop`,`by`,`when`,`and`,`or`,`is`,`isnt`,`not`]).filter((e=>t=>!e.includes(t))([`var`,`const`,`let`,`function`,`static`])),literal:t.concat([`yes`,`no`,`on`,`off`]),built_in:n.concat([`npm`,`print`])},a=`[A-Za-z$_][0-9A-Za-z$_]*`,o={className:`subst`,begin:/#\{/,end:/\}/,keywords:i},s=[r.BINARY_NUMBER_MODE,r.inherit(r.C_NUMBER_MODE,{starts:{end:`(\\s*/)?`,relevance:0}}),{className:`string`,variants:[{begin:/'''/,end:/'''/,contains:[r.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[r.BACKSLASH_ESCAPE]},{begin:/"""/,end:/"""/,contains:[r.BACKSLASH_ESCAPE,o]},{begin:/"/,end:/"/,contains:[r.BACKSLASH_ESCAPE,o]}]},{className:`regexp`,variants:[{begin:`///`,end:`///`,contains:[o,r.HASH_COMMENT_MODE]},{begin:`//[gim]{0,3}(?=\\W)`,relevance:0},{begin:/\/(?![ *]).*?(?![\\]).\/[gim]{0,3}(?=\W)/}]},{begin:`@[A-Za-z$_][0-9A-Za-z$_]*`},{subLanguage:`javascript`,excludeBegin:!0,excludeEnd:!0,variants:[{begin:"```",end:"```"},{begin:"`",end:"`"}]}];o.contains=s;let c=r.inherit(r.TITLE_MODE,{begin:a}),l={className:`params`,begin:`\\([^\\(]`,returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:i,contains:[`self`].concat(s)}]},u={variants:[{match:[/class\s+/,a,/\s+extends\s+/,a]},{match:[/class\s+/,a]}],scope:{2:`title.class`,4:`title.class.inherited`},keywords:i};return{name:`CoffeeScript`,aliases:[`coffee`,`cson`,`iced`],keywords:i,illegal:/\/\*/,contains:[...s,r.COMMENT(`###`,`###`),r.HASH_COMMENT_MODE,{className:`function`,begin:`^\\s*[A-Za-z$_][0-9A-Za-z$_]*\\s*=\\s*(\\(.*\\)\\s*)?\\B[-=]>`,end:`[-=]>`,returnBegin:!0,contains:[c,l]},{begin:/[:\(,=]\s*/,relevance:0,contains:[{className:`function`,begin:`(\\(.*\\)\\s*)?\\B[-=]>`,end:`[-=]>`,returnBegin:!0,contains:[l]}]},u,{begin:`[A-Za-z$_][0-9A-Za-z$_]*:`,end:`:`,returnBegin:!0,returnEnd:!0,relevance:0}]}}export{r as default};