text: function monkey(hljs) {
    var NUMBER = {
      className: 'number', relevance: 0,
      variants: [
        {
          begin: '[$][a-fA-F0-9]+'
        },
        hljs.NUMBER_MODE
      ]
    };
  
    return {
      case_insensitive: true,
      keywords: {
        keyword: 'public private property continue exit extern new try catch ' +
          'eachin not abstract final select case default const local global field ' +
          'end if then else elseif endif while wend repeat until forever for ' +
          'to step next return module inline throw import',
  
        built_in: 'DebugLog DebugStop Error Print ACos ACosr ASin ASinr ATan ATan2 ATan2r ATanr Abs Abs Ceil ' +
          'Clamp Clamp Cos Cosr Exp Floor Log Max Max Min Min Pow Sgn Sgn Sin Sinr Sqrt Tan Tanr Seed PI HALFPI TWOPI',
  
        literal: 'true false null and or shl shr mod'
      },
      illegal: /\/\*/,
      contains: [
        hljs.COMMENT('#rem', '#end'),
        hljs.COMMENT(
          "'",
          '$',
          {
            relevance: 0
          }
        ),
        {
          className: 'function',
          beginKeywords: 'function method', end: '[(=:]|$',
          illegal: /\n/,
          contains: [
            hljs.UNDERSCORE_TITLE_MODE
          ]
        },
        {
          className: 'class',
          beginKeywords: 'class interface', end: '$',
          contains: [
            {
              beginKeywords: 'extends implements'
            },
            hljs.UNDERSCORE_TITLE_MODE
          ]
        },
        {
          className: 'built_in',
          begin: '\\b(self|super)\\b'
        },
        {
          className: 'meta',
          begin: '\\s*#', end: '$',
          keywords: {'meta-keyword': 'if else elseif endif end then'}
        },
        {
          className: 'meta',
          begin: '^\\s*strict\\b'
        },
        {
          beginKeywords: 'alias', end: '=',
          contains: [hljs.UNDERSCORE_TITLE_MODE]
        },
        hljs.QUOTE_STRING_MODE,
        NUMBER
      ]
    }
  };
  